本文目錄一覽:
- 1、PHP版本問題
- 2、最新版apache配置PHP7模塊時出錯
- 3、剛學PHP遇到了七個問題希望大家幫助我解決
- 4、關於PHP5與PHP7的若干問題
- 5、100分剛學PHP遇到了七個問題希望大家幫助我解決
- 6、linux系統使用RPM包安裝了PHP7.2,但是查詢PHP版本顯示的5.5.7是為什麼啊?要怎麼設置才能使用7.2版本?
PHP版本問題
如果對環境配置不了解的話,建議你使用PHPWAMP綠色集成環境,
PHPWAMP同時運行幾百個不同的PHP版本。
支持所有Windows系統,目前最新的Windows10也沒問題。
PHPWAMP自帶php5.2、php5.3、php5.4、php5.5、php5.6、php7這6個默認版本,擁有共生模式(與其他環境同時使用),單身狗霸體模式,強行打通阻礙運行網站。
如果還不滿意,可以自定義設置任何PHP版本,700個PHP版本隨便你切換。
這篇教程文章里提供700多個PHP版本下載。(700個PHP版本一鍵切換)
百度搜索這個文章標題:
PHP集成環境如何自定義PHP版本,同時運行多個php版本一鍵開啟模塊。
搜到的文章中,在文章的附件里有提供PHP歷史版本下載,差不多700多個PHP版本。
最新版apache配置PHP7模塊時出錯
建立一個目錄用來保存你的工程,假定x:apestryhello(以後以$home代替);並最後建立如下文件結構: -WEB-INF –classes –lib
剛學PHP遇到了七個問題希望大家幫助我解決
問題(1)
你安裝的是apache2以上的版本就要添加php5apache2_2.dll這個
問題(2)
要加上,這樣服務器效率高。
可以用是因為apache有默認值。
問題(3)
安裝方法有好多種的,主要看你的http.conf的配置
perl安裝就可以讓apache支持perl語言。
問題(5)
這個好似是說明文檔路徑
問題(6)
於問題2相同
問題(7)
不用,在最後加也可
關於PHP5與PHP7的若干問題
一、
1、在Zend引擎和擴展中,經常要創建一個PHP的變量,底層就是一個zval指針。之前的版本都是通過MAKE_STD_ZVAL動態的從堆上分配一個zval內存。而PHP7可以直接使用棧內存。PHP代碼中創建的變量也進行了優化,PHP7直接在棧內存上預分配zval。這樣節約了大量內存分配和內存管理的操作。
2、zend_string存儲hash值,array查詢不再需要重複計算hash
3、PHP5的hashtable每個元素都是一個
Bucket
*,而PHP7直接存Bucket,減少了內存申請次數,提升了Cache命中率和內存訪問速度。
4、PHP的C擴展函數與PHP中的變量進行參數輸入時,要使用zend_parse_parameters()函數,這個函數根據一個字符串參數找到對應PHP的zval指針,然後進行賦值。
這個函數實際上有一定的性能消耗。PHP7直接使用宏替換了zend_parse_parameters函數,C擴展中不再需要使用zend_parse_parameters進行逐個參數的查找,宏展開後自動會實現參數賦值。僅此一項就提升了5%的性能。
5、很多PHP程序中會大量使用call_user_function,
is_int/string/array,
strlen
,
defined
函數。PHP5
都是以擴展函數的方式提供,PHP7中這4類函數改成ZendVM的OPCODE指令,執行更快。
除了上面5個主要優化點之外,PHP7還有其他更多的細節性能優化。如基礎類型int、float、bool等改為直接進行值拷貝,排序算法改進,PCRE
with
JIT,execute_data和opline使用全局寄存器等等。PHP7對性能的優化會繼續進行下去。
二、有一群人,
創建了一個PHP6的項目,
主要的目的是為PHP引擎增加Unicode支持.
當時開發者們同時維護5和6的開發,
慢慢的大家發現新功能都等着提交給6,
而6因為開發速度慢,
導致很多新特性沒法提交,
狀態很不理想.
再後來6就沒人開發了
三、不太了解、我只用git下的php7主幹代碼
100分剛學PHP遇到了七個問題希望大家幫助我解決
你前面幾個問題,是因為版本問題,apache已經升級到2.2了,很多手冊還是2.0,php的版本,已經到了5.3有和5.3以前的版本在解析代碼時候有一些差別。
對於新手,建議用集成環境開始,比如wamp,xamp,phpnow之類的,待能力起來後再來分開安裝配置。
linux系統使用RPM包安裝了PHP7.2,但是查詢PHP版本顯示的5.5.7是為什麼啊?要怎麼設置才能使用7.2版本?
需要替換掉執行目錄的php鏈接。
系統默認安裝的php有一個軟鏈接在執行目錄( bin或sbin之類的 ),命令行調用php的時候調用到這個文件。如果通過非系統包管理方式安裝了其它版本的php,需要做軟鏈接覆蓋。
查看目前調用的位置
whereis php
創建鏈接覆蓋
ln -s /自行安裝的php文件 /上面找到的php軟鏈接的位置
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/150767.html