之前的一编文章『OS X 系统PHP 5.5.9 的 MongoDB、Memcache、Redis客户端模块分享』因为微云分享官方修改了分享策略导致连接失效的原因文件无法下载(已更新链接),看了文章的网友抓狂实在不好意思,所以决定写一篇详细的编辑方法,希望能授人以渔。
PHP客户端编辑主要步骤如下:
解压缩扩展的源文件压缩包
在解压后的根目录下面执行phpize命令
/usr/bin/phpize
这里大家要注意了,因为OSX系统自带一个比较老版本的php安装,如果大家想使用最新版的PHP的话上面的命令使用新版phpize的命令地址,下面其他PHP命令类似
然后在根目录下面执行 configure 命令
./configure –with-php-config=/usr/bin/php-config
注意这个时候可能提示找不到 configure命令,那看看是不是没有安装 autoconf 和 automake,安装相关程序再次执行即可
另外一定要注意参数–with-php-config 的版本和路径
接下来执行编辑
make
make install
这个时候如果编辑安装成功的话会提示生成的拓展位置,在 php.ini 文件添加 extension=memcache.so
查看 phpinfo() 函数结果可查看memcache 拓展信息说明安装成功,如果你很不幸依然不成功,可以在『关于我』里面找到本人的联系方式
是的,PHP默认是开启PHP短标签的,即默认情况下short_open_tag=ON,大家看看PHP的官方说明上面讲的很清楚下面的官方配置文件上面也是这样说的(绿色和红色标)。
; This directive determines whether or not PHP will recognize code between
; <? and ?> tags as PHP source which should be processed as such. It is
; generally recommended that <?php and ?> should be used and that this feature
; should be disabled, as enabling it may result in issues when generating XML
; documents, however this remains supported for backward compatibility reasons.
; Note that this directive does not control the <?= shorthand tag, which can be
; used regardless of this directive.
; Default Value: On
; Development Value: Off
; Production Value: Off
; http://php.net/short-open-tag
short_open_tag = Off
不过在这里我还是建议大家还是忘了这个默认设置吧,最好还是不要使用短标签的好。
阅读全文…
换上MacBook Pro后第一件事情就是安装工作环境了,PHP系统环境还是选择了XAMPP,直接有现成的OSX安装包相当方便百度已经做了最新版本的分发,下载地址在这里 XAMPP For OSX
集成环境的PHP版本为PHP5.5.9,MongoDB、Redis、Memcache客户端的PHP模块没找到需要自己安装编辑,下面是本人自己安装编辑的so文件,有兴趣的同学可以下载直接使用(理论上相同版本的PHP可以直接使用,没有测试欢迎反馈)
mongo.so
redis.so
memcache.so
原文件在这里,直接使用不成功的可以下载编译,我在编译的过程中遇到过一些小问题,有个别出现Waring提示,但是编译通过了我做了忽略处理。其他如果出现致命错误停止编译的情况下建议换用最新版本的
mongo1.5.2-for-php5.5.9.tgz
redis-2.2.5-for-php5.5.9.tgz
memcache-3.0.8-for-php5.5.9.tgz
如果下载的拓展不可用建议大家参考『OSX系统下面编译PHP的memcache等客户端扩展』自已试着编译安装
PHP官方文档的一段说明:
The closing tag of a PHP block at the end of a file is optional, and in some cases omitting it is helpful when using include or require, so unwanted whitespace will not occur at the end of files, and you will still be able to add headers to the response later. It is also handy if you use output buffering, and would not like to see added unwanted whitespace at the end of the parts generated by the included files. more>>
找了一些资料,大家对PHP闭合标签的总结如下:
好处:如果这个是一个被别人包含的程序,没有这个结束符,可以减少很多很多问题,比如说:header, setcookie, session_start这些动作之前不能有输出,如果不小心在?> 后边加了不可见字符(多余的空格、换行符)等破坏页面显示,就会报”Header already sent”错误,不写的话不会有此问题。另,可以直接把光标移到最后,接着编程。
坏处:在dreamweaver的视图模式下,一团糟。 阅读全文…