分享

PHP的版本选择

 instl 2014-03-08
http://yubosun./tech/php-version.htm

PHP版本特别多,特别杂,想自己搭一套php的运行环境可不是一件容易的事,稍不留神就遇到一个坑,在某个问题上卡住半天。这篇文章尝试将PHP时的版本选择中可能遇到的坑逐一说明:

Windows下

首先看操作系统的版本,如果是Windows的在这里下载:http://windows./download/

再看操作系统是32位还是64位?如果是32位的,就选择带“x86”的版本,如果是64位的,就选择带“x64”的版本。

然后看WEB服务器是什么?如果是IIS系列,就选择带“Non Thread Safe”的版本,如果是Apache httpd系列,就选择带“Thread Safe”的版本。

如果是Apache httpd还要看这个二进制版本是怎么编译的,有三种编译类型,分别是:VC6、VC9、VC11(分别代表Visual C++ 6、Visual C++ 2008、Visual C++ 2012)。这里就有麻烦了:PHP官方的最新版本5.5已经用VC11编译,5.4是用VC9编译的。可是Apache httpd的最新版本呢,至今还是用VC6编译。这意味着一个惊人的事实:Apache httpd的官方版本和PHP的官方版本竟然是无法兼容的!当我费了很大功夫发现这个事实的时候,我的嘴巴子都要惊掉了。那现有的Windows下的Apache+PHP是怎么搞的呢?可以自己用VC11编译Apache httpd,但这太折腾了,PHP官方建议下载第三方打包好的Apache httpd版本,推荐了这个站点:http://www./download/,需要说明一点:这个VC11不支持XP,如果你像我一样有XP怀旧症,最高只能升级到5.4.24,5.5是用VC11编译的,而VC11不支持XP和2003。

知道了上述几个原则再看下载的文件名就很清楚了,下面做习题巩固吧,看这两个文件名代表什么版本?

1 VC11 x64 Non Thread Safe
2 VC9 x86 Thread Safe

答案:
1 使用VC11编译的用于64位Windows的,与IIS配套使用的版本
2 使用VC9编译的用于32位Windows的,与Apache httpd配套使用的版本

Linux下

如果是Linux系的在这里下载PHP的源码:http://cn2./downloads.php

与上面Windows版不同的是,这里下载到的不能直接用,只是PHP的源码,要安装需要自己编译,要编译就需要安装gcc、make等一堆编译软件。看到文档里说./configure、make、make install,针对的就是PHP的源码版本而言。

自己编译php就更麻烦了,依赖的库一大堆,等着人掉进去的坑也有一大堆,我将在另一篇文章里说。如果嫌麻烦,可以找已经编译好的版本,具体的说就是各个发行版的官方的软件库。下面以流行的ubuntu系和centos系为例分别说明;

deb包管理式(ubuntu、Debian)

用apt-cache search php命令可以搜出很多结果,我们需要是“php5”,完整的命令是:apt-get install php5

这显然不是永远适用的,因为命令中有版本号5,未来PHP6是什么情况谁也不知道。

如果想在shell中安装一个命令行的php引擎,就安装这个包

apt-get install php5-cli

RPM包管理(Fedora、RedHat、SUSE、CentOS)

yum install php

如果是php命令行,就安装yum install php-cli

吐个槽,连选择版本都要知道这么多(本文的全名应该叫《PHP的版本选择:从入门到精通》,哈哈),说了这么多,还没开始真的配置php环境呢,真的只是选择版本而已,搞技术真是太辛苦了。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多