Cache-Control头各个值的说明 cache-control的值比较复杂,下面参考RFC文档和MDN网站罗列出的结果。请求头max-age客户端不愿意接受age超过这个值的缓存。并且不接受过期缓存,除非max-stale存在。 总是有值max-stale如果有值,客户端可以接受过期时间不超过指定值的缓存 如果没有值,客户端愿意接受过期缓存而无论过期过久。min-fresh客户端愿意接受一个新鲜度不小于当前age加上指定时间的响应
php命名空间之前咋办 今天连数据库的时候遇到一个问题,比如new PDO()会出现class not found的错误,一般我们自己的类写好自动加载就没有问题了,但是这是php内置的函数,怎么办?自动加载也加载不到啊。考虑1:加一层,自己写一个PDO,然后封装一下各个方法,调用这个明明空间里面的PDO,然后这个PDO调用内置的PDO。 结论:根本没解决任何问题,内置的PDO咋调用,要能调用直接用啊! 考虑2:在一个文
PHP中use分析 use就是导入命名空间,省略use则默认为当前命名空间。 容易类比java的机制,命名空间即java包名,每次都要使用import语句导入对应的包,即use。当省略时,java默认是lang包,这里默认是当前命名空间。 为了防止出错,不要省略use!在语义上,use和require、include有相似的地方,但是实际上他们是两个不同而且不相干的机制php官方文档对use的说明允许通过别名引用或
php中require,include,use区分 require和include区别仅仅是文件不存在的时候报错的方式不一样,前者停止脚本,后者继续执行。都是引入一个文件,引入以后执行引入的文件,执行完成以后继续执行当前文件。 所以参数值是文件地址,使用左斜杠“/”;use是使用命名空间,所以参数值是命名空间,使用右斜杠“\”命名空间和文件路径并不一定是直接对应的!
phpMyAdmin配置记录 windows下直接解压到网站目录就能用linux下解压到网站目录后需要修改一下配置文件,具体修改方式官网有详细的说明。按照官网的方式配完以后登录出现了这样的错误: phpmyadmin #2002 - No such file or directory — The server is not responding (or the local server’s socket is not cor
linux下nginx、php、mysql环境搭建记录和问题汇总 软件版本和系统环境系统:centOS-7 php:7.0.5 nginx:1.9.14 mysql:nginx安装下载软件包,解压进入。./configure ----prefix="/usr/local/nginx"注意根据需要解决以来环境,例如,上面的编译参数只指定了安装目录,那么nginx的依赖环境有gzip,pcre,zlibyum install gzip pcre-devel z
windows下的php、nginx、mysql配置记录和问题汇总 windows下的php+nginx+mysql这个环境也配过很多次了,应该也不算陌生,但是每次配都会花好多时间,所以专门用来记录一下。软件版本网上资料很多,但是有一些经常因为版本的不同出现很多问题,所以我觉得有必要在一开始说明这个环境的版本,以免再遇尴尬。 php:php-7.0.5 nginx:nginx-1.9.14 mysql:mysql-5.7.11 系统:windows10,64
JAVA同步容器使用心得 重新写了一次坦克大战,以前自己写一个新类用synchronized同步所有方法,现在发现java自己提供了要给,记录一下使用过程中遇到的问题。Collections.synchronizedList最开始我以为直接使用返回的值就可以了,后来发现完全没用,正确的用法是用synchronized关键字把对象先锁住然后再使用。List list = Collections.synchronizedList
x&(x-1) 分析只考虑x>=0的情况x&(x-1)x-1在二进制中实际上是把从右往左数的第一个1变成0,右边所有的0变成1,左边的部分不变化//例如11001000 十进制20011000111 十进制199两个数字按位与之后可以把右边的部分全部置0PS:同理,按位异或可以把左边的部分全部置0。应用利用这个性质,有几个比较常见的用法统计二进制位中1的个数 while(x!
Eclipse设置代码垂直对齐 示例//非垂直对齐 int[] myArray = { 1, 2, 3, 4, 5, 6 }; int theInt = 1; String someString = "Hello"; double aDouble = 3.0;//垂直对齐 int[] myArray = { 1, 2, 3, 4, 5, 6 }; int theI
JDK切换版本 我只不过是想换个jdk版本玩玩,结果差点被虐出血。。。。 这里说的是纯记事本编辑控制台编译的方式切换的方法,如果使用eclipse等IDE的请绕行。我在网上搜“一台电脑同时装两个jdk”之类的关键字,出来的都不太相关。于是自己琢磨了一下,在官网把jdk6,7,8都下了下来,然后来回装,终于搞定了!环境变量的配置环境变量最好不要写死,不然切换的时候改的多一点 最好就是用”%“的方式,一般写”%JA
PHP与Redis开发环境的简单配置 现在手上的项目要求在php中使用redis操作,今天倒腾了一下。 Redis官方推荐的PHP客户端(或者说扩展)是Predis和php_reids,前者是完全使用PHP代码实现的原生客户端,后者是用c编写的PHP扩展,功能上二者区别不大,就性能而言后者更优。但是除非执行大量的Redis命令,否则很难区分二者的性能。而且施继忠执行Redis命令的开销更多在网络传输上,单纯注重本地性能开销意义不大。
LinkedList中的remove方法 实在是太坑爹了!!!!!jdk7的api里面,他有三个remove方法 return type method Description E remove() Retrieves and removes the head (first element) of this list. E remove(int index) Removes the element at th