jin7
炉火纯青
炉火纯青
  • UID522
  • 粉丝0
  • 关注0
  • 发帖数6
阅读:57159回复:5

请问下载最新版的php7.1, 是下载32位还是64位?选线程安全还是非线程安全?(已解决)

楼主#
更多 发布于:2017-03-17 18:54
请问下载最新版的php7.1, 是下载32位还是64位??选线程安全还是非线程安全?
lccee
管理员
管理员
  • UID1
  • 粉丝21
  • 关注1
  • 发帖数236
沙发#
发布于:2017-03-18 22:19
帖内置顶  –  lccee  –  2017-03-18 23:19
PHP32和64的选择和区别。

PHP是具有32bit和64bit的区别的。
32bit的php的整型数据最大最小正负2GB左右(0x7FFFFFFF)
64bit的php的整型数据最大最小正负9百多万TB左右(0x7FFFFFFFFFFFFFFF)
网站代码经常需要注意整型数据的极限值。

版本选择:
如果你的电脑/服务器是32位的, 那装x86的版本
如果是64位的, 装x64的版本

PHP线程安全和非线程安全的选择和区别。
备注:在PHP5.3以后,PHP不再有ISAPI模式,安装后也不再有php5isapi.dll这个文件。
Windows版的PHP从版本5.2.1开始有Thread Safe(线程安全)和None Thread Safe(NTS,非线程安全)之分,
Windows下的PHP版本分两种:线程安全版本与非线程安全版本,线程安全和非线程安全只针对windows,而 linux下没有这个区分。


那么两者区别在何处?到底应该用哪种?简单的介绍来说。

如果是使用ISAPI的方式来运行PHP就必须用Thread Safe(线程安全)的版本;而用FastCGI模式运行PHP的话就没有必要用线程安全检查了,用None Thread Safe(NTS,非线程安全)的版本能够更好的提高效率。


要论两者的区别,详细论说起来比较麻烦,从使用者的角度,记住什么时候用哪种版本的区别就可以了。

1、windows + IIS +  FastCGI :使用非线程安全版本。
理由:
以FastCGI方式安装PHP时,PHP拥有独立的进程,并且FastCGI是单一线程的,不存在多个线程之间可能引发的相互干扰(这种干扰通常都是由于全局变量和静态变量导致的)。由于省去了线程安全的检查,因此使用FastCGI方式比ISAPI方式的效率更高一些。


Thread Safe      线程安全
 Non
Thread Safe  非线程安全 (官方不建议用来进行实际生产)
2、windows + IIS +  ISAPI :使用线程安全版本。
理由:
PHP以ISAPI方式安装时,PHP没有独立的进程,而是作为DLL被IIS加载运行的,即是依附于Web服务器进程的。当Web服务器运行在多线程模式下(IIS正是这种情况),PHP自然也就运行在多线程模式下。只要是在多线程模式下运行,就可能存在线程安全问题,因此应选择PHP的线程安全版本。

3、windows + Apache +  PHP(模块) :使用线程安全版本。
理由:
如果你要在Apache中以模块方式安装PHP,则你应该使用PHP的线程安全的版本。原因是当PHP作为Apache的模块安装时,PHP没有独立的进程,而是作为模块以DLL的形式被加载到Apache中的,是随Apache的启动而启动的,而Windows下的Apache为多线程工作模式,因此PHP自然也就运行在多线程模式下。因此,这种情况下应使用PHP的线程安全版本。

4、windows + Apache +  PHP(ISAPI) :使用线程安全版本。
理由:
由于以ISAPI方式来安装PHP时,PHP也没有独立的进程,也是作为模块被加载到Apache中的,因此,同样也需要使用PHP的线程安全版本。
一般不建议在Apache中以ISAPI方式来安装PHP,原因是到目前为止,Apache通过mod_isapi.so模块来实现的ISAPI功能并不完整,并未完整实现微软对ISAPI所制定的全部规范。

5、windows + Apache +  PHP(FastCGI) :使用非线程安全版本。
理由:
如果你要在Apache中以FastCGI方式使用PHP,则同在IIS中使用FastCGI的PHP的情况一样,你应该使用PHP的非线程安全的版本。原因是在Apache中以FastCGI方式安装PHP时,PHP拥有独立的进程,并且FastCGI是单一线程的,故应使用PHP的非线程安全版本以提高性能。


而PHPWAMP属于CGI+模块的混合运行方式(包含了多种),所以在线程安全和非线程安全的选择上,得看phpinfo的Server API值。
大部分用户都会在phpwamp站点管理里设置站点,如果是在apache站点管理自定义php版本,建议优先选择“非线程安全”PHP版本。
快乐的小猫咪
总版主
总版主
  • UID6
  • 粉丝3
  • 关注0
  • 发帖数9
板凳#
发布于:2017-03-18 22:00
用phpwamp自带的最新版就可以了,如果对这些不是很了解,没必要自行下载
lccee
管理员
管理员
  • UID1
  • 粉丝21
  • 关注1
  • 发帖数236
地板#
发布于:2017-03-18 22:19
PHP32和64的选择和区别。

PHP是具有32bit和64bit的区别的。
32bit的php的整型数据最大最小正负2GB左右(0x7FFFFFFF)
64bit的php的整型数据最大最小正负9百多万TB左右(0x7FFFFFFFFFFFFFFF)
网站代码经常需要注意整型数据的极限值。

版本选择:
如果你的电脑/服务器是32位的, 那装x86的版本
如果是64位的, 装x64的版本

PHP线程安全和非线程安全的选择和区别。
备注:在PHP5.3以后,PHP不再有ISAPI模式,安装后也不再有php5isapi.dll这个文件。
Windows版的PHP从版本5.2.1开始有Thread Safe(线程安全)和None Thread Safe(NTS,非线程安全)之分,
Windows下的PHP版本分两种:线程安全版本与非线程安全版本,线程安全和非线程安全只针对windows,而 linux下没有这个区分。


那么两者区别在何处?到底应该用哪种?简单的介绍来说。

如果是使用ISAPI的方式来运行PHP就必须用Thread Safe(线程安全)的版本;而用FastCGI模式运行PHP的话就没有必要用线程安全检查了,用None Thread Safe(NTS,非线程安全)的版本能够更好的提高效率。


要论两者的区别,详细论说起来比较麻烦,从使用者的角度,记住什么时候用哪种版本的区别就可以了。

1、windows + IIS +  FastCGI :使用非线程安全版本。
理由:
以FastCGI方式安装PHP时,PHP拥有独立的进程,并且FastCGI是单一线程的,不存在多个线程之间可能引发的相互干扰(这种干扰通常都是由于全局变量和静态变量导致的)。由于省去了线程安全的检查,因此使用FastCGI方式比ISAPI方式的效率更高一些。


Thread Safe      线程安全
 Non
Thread Safe  非线程安全 (官方不建议用来进行实际生产)
2、windows + IIS +  ISAPI :使用线程安全版本。
理由:
PHP以ISAPI方式安装时,PHP没有独立的进程,而是作为DLL被IIS加载运行的,即是依附于Web服务器进程的。当Web服务器运行在多线程模式下(IIS正是这种情况),PHP自然也就运行在多线程模式下。只要是在多线程模式下运行,就可能存在线程安全问题,因此应选择PHP的线程安全版本。

3、windows + Apache +  PHP(模块) :使用线程安全版本。
理由:
如果你要在Apache中以模块方式安装PHP,则你应该使用PHP的线程安全的版本。原因是当PHP作为Apache的模块安装时,PHP没有独立的进程,而是作为模块以DLL的形式被加载到Apache中的,是随Apache的启动而启动的,而Windows下的Apache为多线程工作模式,因此PHP自然也就运行在多线程模式下。因此,这种情况下应使用PHP的线程安全版本。

4、windows + Apache +  PHP(ISAPI) :使用线程安全版本。
理由:
由于以ISAPI方式来安装PHP时,PHP也没有独立的进程,也是作为模块被加载到Apache中的,因此,同样也需要使用PHP的线程安全版本。
一般不建议在Apache中以ISAPI方式来安装PHP,原因是到目前为止,Apache通过mod_isapi.so模块来实现的ISAPI功能并不完整,并未完整实现微软对ISAPI所制定的全部规范。

5、windows + Apache +  PHP(FastCGI) :使用非线程安全版本。
理由:
如果你要在Apache中以FastCGI方式使用PHP,则同在IIS中使用FastCGI的PHP的情况一样,你应该使用PHP的非线程安全的版本。原因是在Apache中以FastCGI方式安装PHP时,PHP拥有独立的进程,并且FastCGI是单一线程的,故应使用PHP的非线程安全版本以提高性能。


而PHPWAMP属于CGI+模块的混合运行方式(包含了多种),所以在线程安全和非线程安全的选择上,得看phpinfo的Server API值。
大部分用户都会在phpwamp站点管理里设置站点,如果是在apache站点管理自定义php版本,建议优先选择“非线程安全”PHP版本。
我来也
出类拔萃
出类拔萃
  • UID314
  • 粉丝0
  • 关注0
  • 发帖数11
4楼#
发布于:2017-03-18 23:27
用啥都可以啊,只要能满足你需求不就好了
jin7
炉火纯青
炉火纯青
  • UID522
  • 粉丝0
  • 关注0
  • 发帖数6
5楼#
发布于:2017-03-20 20:15
谢谢各位
游客


返回顶部