前言
在MAC OS X 10.11中php的版本是5.5的,近來一年多里,看到了很多關(guān)于php7介紹,以為php7增加了很多新特性,也刪除了原來很多的老特性,所以一直以來并沒想去嘗試使用php7,但今天去php官網(wǎng)上認(rèn)真的看了一下php7的新特性,發(fā)現(xiàn)其實(shí)php7最大的提升在于性能,雖然在語法上增加了很多新特性,但不影響開發(fā),并且能很好的兼容以前php的代碼,在這里簡要的說明一下php7的新特性,具體的說明請移步到官網(wǎng)去看。
移除的一些特性
1.移除一些舊的擴(kuò)展,被移遷移到了PECL(例如:mysql_*)
2.移除SAPIs的支持
3.<?
和<? language=“php”
這樣的標(biāo)簽被移除了
4.16進(jìn)制的字符串轉(zhuǎn)換被廢除了
//PHP5 "0x10" == "16" //PHP7 "0x10" != "16"
5.HTTP_RAW_POST_DATA移除了(可以使用php://input替代)
6.靜態(tài)函數(shù)里面不再支持通過一個(gè)不兼容的$this調(diào)用一個(gè)非靜態(tài)的函數(shù)了
$o = & new className{}
,不再支持這樣的寫法
7.php.ini文件移除了#作為注釋,統(tǒng)一用;去注釋
新特性
- ZEND引擎升級到Zend Engine 3,也就是所謂的PHP NG
- 增加抽象語法樹,使編譯更加科學(xué)
- 64位的INT支持
- 統(tǒng)一的變量語法
- 原聲的TLS - 對擴(kuò)展開發(fā)有意義
- 一致性foreach循環(huán)的改進(jìn)
- 新增 <=>、**、?? 、\u{xxxx}操作符
- 增加了返回類型的聲明
- 增加了標(biāo)量類型的聲明
- 核心錯(cuò)誤可以通過異常捕獲了
- 增加了上下文敏感的詞法分析
說了這么多的廢話,進(jìn)入主題吧。
升級步驟如下:
1、升級php(在終端下執(zhí)行)
curl -s http://php-osx.liip.ch/install.sh | bash -s 7.1
在終端下直到出現(xiàn)”Syntax OK”就說明安裝成功了。這個(gè)時(shí)候,用phpinfo()
函數(shù),你可以看到PHP Version 7.1.0alpha2
2、解決mysql鏈接的問題,由于php7拋棄了mysql的擴(kuò)展函數(shù)(mysql_*),所有的鏈接mysql都要使用pdo,而php7的pdo_mysql.default_socket默認(rèn)路徑是/tmp/mysql.sock,而mysql.sock的路徑在/private/var/mysql/mysql.sock,所以需要做一個(gè)軟連接到tmp文件夾,在終端下執(zhí)行
cd /tmp sudo ln -s /private/var/mysql/mysql.sock mysql.sock
如果解決以上錯(cuò)誤,php鏈接數(shù)據(jù)庫時(shí)會提示:SQLSTATE[HY000] [2002] No such file or directory
3、重啟apache和mysql,這樣就可以啦!
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對的支持。