PHP6新特性
為什么80%的碼農都做不了架構師?>>> ??
2007年在巴黎舉行的PHP開發者大會中,PHP6開發的消息開始流傳開來。于PHP大會討論的PHP6將有很大 幅度的變化,但這只是草案階段,并不代表所有會議的記錄都會隨著PHP6的揭曉而包含在變更中,也就是說,在揭曉 PHP6之前,還是會有異動的情形,但是可以確定的是下面所列的數項變化,將會隨著PHP6一同面世(當然不是百分百咯,)趕快來看看這些新特征吧: 1、 支持Unicode。Unicode是有其必然,雖然Unicode占用較多的空間,但Unicode帶來的便利性,遠超過占用空間的缺點,尤其在國際化的今天,硬件設備越來越強大, 網速也大幅度的提升,這么一點小小的缺點是可以忽略的。另外一點,PHP也可以在.ini文件中設定能不能開啟支持Unicode,決定權在你自己,這是一個不錯的點子,關掉Unicode的支持,PHP的性能并不會有大幅度的提升,主要的影響在于需要引用字符串的函數。 2、 Register Globals 將被移除 這是一個主要的決定,老的PHP使用者會覺得Register Globals滿方便的,但是卻忽略了Register Globals會帶來程序上安全性的隱患,大多數的主機上此項功能是關閉的,印象中從PHP4.3.x版開始,此項默認配置值即是關閉狀態,PHP6正式 移除Register Globals也代表著如果程序是PHP3時代的產物,將完全不能運用,除了改寫用途外,別無他法。 3、 Magic Quotes 將取消 Magic Quotes主要是自動轉義須要轉義的字符,此項功能移除也符合大多數PHP開發者的心聲。 4、 Safe Mode 取消。老實說,這個模式不知道哪里不好,取消就取消吧,反正也用不到。 5、 ’var’ 別名為 ‘public’,在類中的var聲明變成public的別名,相信是為了兼容PHP5而作的決定,PHP6現在也可以稱作為OO語言了。 6、 通過引用返回將出錯 未來通過引用返回編譯器將會報錯 例如$a =& new b()、function &c(),OO語言默認就是引用,所以不須要再運用 &了。 7、 zend.ze1 compatbility mode 將被移去(Zend.ze1相容模式將被移去),PHP5是為兼容舊有PHP4,所以在.ini中可選擇是否開啟相容模式,原由在于PHP5運用的是第二代分析引擎,但是相容模式并不是百分之百能分析 PHP4語法,所以舊時代的產物,移除。 8、 Freetype 1 and GD 1 support 將不見 這兩個Libs存在了很久,php6將不再支持,況且GD1早已被現在的GD2取代了。 9、 dl() 被移到 SAPI 中dl()主要是讓設計師加載extension Libs,現在被移到 SAPI 中。 10、 Register Long Array 去除 從PHP5起默認是關閉,在PHP6中正式移除。 11、 一些Extension的變更例如 XMLReader 和 XMLWriter 將不再是以Extension的方式出現,他們將被移入到PHP的核心之中,并且默認是開啟, ereg extension將被放入PECL,代表著它將被移出PHP核心,這也是為了讓路給新的 正則表達式extension,此外,Fileinfo extension 也將被導入PHP的核心之中。 12、 APC將被導入核心 這是一個提高PHP性能的功能,現在它將被放入PHP核心中,并且可以選擇是否啟用APC。 13、 告別ASP風格的起始標簽 原來是為了取悅ASP開發者轉向運用 PHP,現今已經不再須要這種做法了。 最后,別期望PHP6的性能可以徹底超過PHP5,有可能PHP6的執行效率會比PHP5還要來得慢,但是可以預期的是,PHP開發小組將會努力的完善PHP6,超越PHP5。轉載于:https://my.oschina.net/ozil/blog/105859
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
- 上一篇: 常用16种视图切换动画
- 下一篇: RHEL6入门系列之二十七,源码安装及软