@一般是用不到的,因为生产环境是关闭错误输出的,并且,你如果语句加了@在前面,即时开启错误输出,也不会讲错误输出到前端,自己心里有个数。这个符号的作用就是隐藏报错和警告提示,通常常见于在使用file_get_contents()进行网络请求的时候,置于函数前面,这样因为网络异常等问题导致请求[……]

Read more

DIRECTORY_SEPARATOR,即目录分隔符,是定义php的内置常量。在调试机器上,在windows我们习惯性的使用“\”作为文件分隔符,但是在linux上系统不认识这个标识,于是就要引入这个php内置常量了:DIRECTORY_SEPARATOR。当开发环境和生产环境不一致的时[……]

Read more

偶尔读源码,发现竟然用到了var,咦?javascript的写法也可以用?于是顺手写个脚本测试,发现直接报错:Parse error: syntax error, unexpected ‘var’ (T_VAR)分析了下,发现这个var人家是在类里面写的,难道也算一种变量范围的声明?类似pu[……]

Read more

问题出现是这么个情况,写了个index判定来源然后分别include不同目录的文件,结果发现,include之后,对应文件声明的全局变量均为传递。琢磨了一下,因为原始include的是在一个函数下的,于是改成直接引入,全局变量有效传递。后经过了解,才知道原来这个是因为作用域不同导致的坑,基础不扎实~[……]

Read more

恩,还是学艺不精,就是标记下,当发现include_once后,对应文件的变量并不存在的时候,这种情况,通常是前置的函数已经include_once了文件,并且,对应的变量并未传递,然后include_once检测发现已经include的过了,就不会再次引入,然后你的变量当然也就拿不到了。在[……]

Read more

GMT时间,一般RSS需要用到,虽然RSS过期了,但自写脚本抓一些常用的关注对象的RSS也还是有一定必要的,时间格式为:Mon,12 May 2001 00:20:00 GMT解决办法:

gmdate('D, d M Y H:i:s T',time()+8*3600);

[……]

Read more

最初搜了下,说是3.0之后才支持集群,由于生产环境的PHP是5.2.17,于是各种尝试,各种装不上,偶然检索解决方案,在https://github.com/phpredis/phpredis/issues/884 看到作者说其实2.2.8和3.0一样,只不过3.0支持PHP7而已。卧槽……[……]

Read more

phpRedisAdmin是一款可视化的网页管理redis的系统,用惯phpmyadmin的肯定不陌生这类的系统。安装方法如下:

git clone https://github.com/ErikDubbelboer/phpRedisAdmin.gitcd phpRedisAdming[......]

Read more