PHP7棄用的功能


以下功能已被取消,可能會在PHP的未來版本中刪除。

PHP4風格的建構函式

PHP4式建構函式,它與類的名稱相同,因為它們是在所定義類的方法,現在已過時,並且將在未來被移除。如果PHP4的構造僅僅是一個類中定義建構函式,PHP7將發出E_DEPRECATED。類實現建構函式 __construct()方法不受影響。

範例

<?php
class A {
   function A() {
      print('Style Constructor');
   }
}
?>

這將在瀏覽器產生以下輸出 -

Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; A has a deprecated constructor in...

靜態呼叫非靜態方法

非靜態方法靜態呼叫已被棄用,並且可能在將來被移除。

範例

<?php
class A {
   function b() {
      print('Non-static call');
   }
}
A::b();
?>

這將在瀏覽器產生以下輸出 -

Deprecated: Non-static method A::b() should not be called statically in...
Non-static call

password_hash() - salt 選項

password_hash()函式的salt選項已被棄用,使開發人員不會產生他們自己的(通常是不安全的)salt。函式本身生成一個加密的安全salt,在開發者沒有提供salt值時 - 因此,客製化 salt 生成不再需要了。

capture_session_meta SSL上下文選項

capture_session_meta SSL上下文選項已被棄用。 SSL後設資料現在通過stream_get_meta_data()函式獲取。