Siam博客

bitmap算法的PHP实现,快速去重排序,数据压缩储存

计算机基础 PHP

,## 基础知识储备

一个字节占用8个位

1字节(byte)=8位(bit)
1K=1024字节
1M=1024k

因为电路的逻辑只有0和1两个状态,这里的0和1并不是数字的0和1,0和1是表示两种不同的状态,0表示低电平,1表示高电平。因为计算机是由无数个逻辑电路组成的,只能根据0和1的无限位数和组合来表达信息。 电脑只认识0和1这两个数字,所有的数据在电脑中都是以0和1组成的编码存储的,这样的编码叫做二进制。一个0或一个1就叫做一个位 最初的计算机性能和存储容量都比较差,所以普遍采用4位BCD编码(这个编码出现比计算机还早,最早是用在打孔卡上的)。 BCD编码表示数字还可以,但表示字母或符号就很不好用,需要用多个编码来表示。 后来又演变出6位的BCD编码(BCDIC),以及至今仍在广泛使用的7位ASCII编码。 不过最终决定字节大小的,是大名鼎鼎的System/360。当时IBM为System/360设计了一套8位EBCDIC编码,涵盖了数字、大小写字母和大部分常用符号,同时又兼容广泛用于打孔卡的6位BCDIC编码。System/360很成功,也奠定了字符存储单位采用8位长度的基础,这就是1字节=8位的由来。

Read more

PHP:Phar的打包和使用

PHP
什么是Phar? Phar是PHP里类似于Jar的一种打包文件,可以将整个应用打包,便于部署等。 安装需求 Phar需要 PHP >= 5.2 ,在 PHP5.3或以上,Phar已经包含在内置的扩展中,在这之前可以通过PECL扩展安装。 运行时配置 通过php.ini的配置项,可以设定 ...
Read more

PHP设置Redis储存Session,自定义session驱动

PHP
思 我们在之前的文章已经讲到了session是将数据储存在本地文件中,并且将session_id返回给客户端(浏览器会储存在cookies里)。 那么当我们在负载均衡集群环境的时候,负载调度部分负责把客户端的请求按照不同的策略分配给后端服务节点。所以会出现我们在A机器设置了session,后 ...
Read more

HTTP跨域详解和解决方式

计算机基础

HTTP跨域

Access to XMLHttpRequest at ‘xx’ from origin ‘xx’ has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’ header is present on the requested resource.

前端的这个报错相信很多人都有遇到过,也知道这是跨域请求的问题。 那么究竟什么是跨域,跨域又是怎么产生的,以及跨域请求的问题需要怎么解决。我们一起来了解一下这些知识。

什么叫跨域

: 域既是 Windows 网络操作系统的逻辑组织单元,也是Internet的逻辑组织单元,它是安全边界。 只有域的所有者才能访问管理域内部的资源,若其他的域要访问或者管理,则需要该域赋予其他域相关权限。 从小角度来讲,在php中的变量作用域,就可以体现出安全边界的概念。在以下例子中,调用test函数并不会输出任何内容。

Read more

PHP自动加载与composer自动加载

PHP
当我们编写面向对象的程序时,通常是将类分别放在不同的文件中。但这样一来,当我们调用其他类的时候,则需要先手动引入该文件(否则会因为当前程序中没有该类名的类而报错) 久而久之加载的列表就会很混乱复杂,不方便管理。 文件A.php <?php class A{ publi ...
Read more

PHP path_info,Thinkphp controller not exists index\php

PHP
写在前面 为什么写下这篇文章,嗯,因为又踩坑了。 问题背景: php7.2 nginx thinkphp5 问题体现: url如果以/为结尾 比如index.php/admin/,不会自动访问默认控制器、方法index,而是报错 controller not exists:app\adm ...
Read more

mysql聚合统计数据查询缓慢优化方案

数据库
写在前面 在我们日常操作数据库的时候,比如订单表、访问记录表、商品表的时候。 经常会处理计算数据列总和、数据行数等统计问题。 随着业务发展,这些表会越来越大,如果处理不当,查询统计的速度也会越来越慢,直到业务无法再容忍。 所以,我们需要先了解、思考这些场景知识点,在设计之初,便预留一些优化空 ...
Read more

JSON序列化接口,JsonSerializable

PHP
写在前面 php中操作json的函数有json_encode(),json_decode() 在该文档中,encode的传入值可以是除了resource 类型之外的任何数据类型。 简单序列化一个类 class Siam{ public $name = 'siam& ...
Read more

Chrome浏览器开发工具之scheme入口

前端

写在前面

没啥 ,就是自己玩着玩着发现还有这么多没见过,记录一下

实验室

chrome://flags/ 一些实验性的功能,可能在未来保留成正式或者被移除,同时也可能会产生不可预期的影响,开发者鼓捣记得备份数据!

http://blog.sina.com.cn/s/blog\_1806ff8820102xr22.html

知乎文章

https://www.zhihu.com/question/27380104

网络调试

chrome://net-internals/#events net-internals是一套工具集合,用于帮助诊断网络请求与访问方面的问题,它通过监听和搜集 DNS,Sockets,SPDY,Caches等事件与数据来向开发者反馈各种网络请求的过程、状态以及可能产生影响的因素。

Read more

PHP中对象的序列化和反序列化

PHP
php的serialize函数和unserialize函数 serialize() 返回字符串,可以存储于任何地方。 serialize() 可处理除了 resource 之外的任何类型。甚至可以 serialize() 那些包含了指向其自身引用的数组。 这有利于存储或传递 PHP 的值,同 ...
Read more
上一页 下一页