PHP的下一個版本,V6,包含了很的新特性和語法改進,會使它在面向對像方面性更易用。
其他重要的特性:比如在核心函數中對Unicode (統一編碼)的支援,這意味著 PHP 6提供了更好的更可靠國際支援。
PHP已經很流行, 被無數的網站使用,被大部分因特網接入商所支援,被Yahoo這樣的大網路公司使用著。在即將來臨的PHP版本中準備新增一些成功的新特性,使PHP在某 些場合下更易用更安全。你準備好接受 PHP 6 了嗎?如果你明天就升級了,你的程式會執行得很好嗎?你該怎麼辦?這篇文章集合了PHP 6的改變,他們中的一些備份移植到版本的PHP v5.x,您目前的Script可能需要進行一些調整。
如果你現在使用不是PHP,但是一直在考慮它,考慮一下它的新特性。這些特點,從Unicode的核心支援到XML支援,使它更容易為你寫的功能填補PHP的應用。
PHP 6 新特性如果要轉載本文請注明出處,Seven的部落格,Email:See7di@Gmail.com
PHP 6目前已經作為開發者快照使用,所以你可以下載和試用一下這篇文章列出很多特性,這些特性已經在目前的快照中實現了。見資源。
改進Unicode支援如果要轉載本文請注明出處,Seven的部落格,Email:See7di@Gmail.com
在PHP的核心函數中,有很多對Unicode字串的支援的改進,這些新特性將產生大幅度的影響因為它允許PHP為國際字元提供更多的支援。所以如果一個開發者或者架構師使用不同的語言,例如Java程式語言,是因為它具有超過PHP的國際化支援的話,當支援改進時他會花一點時間來考慮一下PHP。
因為今天你已經可以下載到開發者版本的 PHP V6,你將看到一些功能函數已經支援Unicode字串。有一個函數清單已經被測試和驗證了完全可以處理Unicode,參見資源。
命名空間如果要轉載本文請注明出處,Seven的部落格,Email:See7di@Gmail.com
命名空間是一種避免因函數或者類之間的命名衝突而使你的函數和類以及方法無法讀取,而不使用前綴命名慣例的一種方法。因此,透過使用命名空間,你可以命名別人可能已經使用的類名,而不用擔心在執行時會出錯。表一提供了一個在PHP中使用命名空間的範例。
您不用在源程式碼中做更新或更改,因為你寫的任何PHP程式碼可以不包含命名空間而執行得很好。因為命名空間特性似乎會移植到PHP 5.3 X中,如果它可以使用,您可以在自己的程式中引用命名空間。
表一,命名空間範例如果要轉載本文請注明出處,Seven的部落格,Email:See7di@Gmail.com
<?php
// I'm not sure why I would implement my own XMLWriter, but at least
// the name of this one won't collide with the one built in to PHP
namespace NathanAGood;
class XMLWriter
{
// Implementation here...
}
$writer = new NathanAGood::XMLWriter();
?>
Web 2.0 特性
依賴於你怎麼使用PHP和你現在Script的是什麼樣子的,現在的語言和語法差異,可能會或者不會最大程度的影響下面一些特性,這是指那些直接讓你引用的Web 2.0功能到你的PHP應用程式。
SOAP
SOAP是一種網路服務「說 話」的協議,並且支援不少其他語言,例如Java和微軟的.NET,雖然有其他的方法來驅動和使用網路服務,比如 表象化狀態轉變(Representational State Transfer )REST,SOAP仍然在使不同平台具有可操作性中是最常用的。此外,SOAP在PHP擴充和PEAR庫中使用,SOAP在PHP中預設是不支援的,因 此你啟用這個擴充或者叫你的ISP啟用。此外,PEAR包允許你建立SOAP客戶端和伺服器,如SOAP包。
如果你改變了預設設定,SOAP將會在PHP 6中啟用。這個擴充將提供你很容易的的實現SOAP客戶端和SOAP服務,允許你編寫的應用提供使用或者網路服務。
如果SOAP擴充是預設設定,那就意味著你不能在PHP中設定它們,如果您開發的PHP應用程式並且它們發佈到一個ISP伺服器上,您可能需要檢查一下你的ISP,以驗證SOAP並啟用為他們升級。
XML如果要轉載本文請注明出處,Seven的部落格,Email:See7di@Gmail.com
在PHP 5.1中XMLReader 和XMLWriter已經變成PHP核心的一部分,這使你工作起來更輕鬆如果在你的PHP程式中需要使用到XML的話。和SOAP擴充一樣,如果你使用SOAP或者XML這是個好消息因為PHP 6比已經出爐的PHP4 更適合你。
被刪除的東西
除 了具有的一些新功能,PHP 6引擎將刪除一些在前面版本中已經有的功能。大部分這些功能,如register_globals 和safe_mode 在目前的PHP中被視為「破的」。因為他們可能會暴露一些安全風險。PHP在努力的清除中,在下一個版本中這些將從PHP中刪除或者廢棄。反對者認為大部 分ISP或者企業會保留現在的Script因為升級到PHP6會破壞現在的的Script,但是支援者認為很高興看到PHP團隊修補了這些漏洞,並且提供 了一個乾淨,安全的執行工具。
將從PHP刪除的功能有:
magic_quotes register_globals register_long_arrays safe_mode