补充*摒弃一些老式的写法

参考:Deprecated features in PHP 7.0.x

摒弃一些老式的写法

目录:

  • 摒弃老式构造函数的写法

  • 摒弃静态调用非静态方法

  • 摒弃password_hash() salt 的选项写法

  • 摒弃 capture_session_meta SSL上下文选项写法

  • LDAP的用法 - 摒弃使用 ldap_sort() 函数(被废弃)

摒弃老式构造函数的写法

从php4开始,构造函数的便可以通过命名保持与类名一致的方式来声明自己是构造函数。这种方式一直被沿用到php5.6。但是在PHP7中,不推荐,官方已经说会在未来删除。

<?php
class Info
{
    public function info()
    {
        echo "I am just a normal class method";
    }
}

$info = new Info();
$info->info();

使用__construct方法

<?php
class Info
{

    public function __construct()
    {
        echo "I am default constructor";
    }
}

$info = new Info();
$info->info();

摒弃静态调用非静态方法

静态调用的方法不声明的静态是过时的,或许未来会删除。

<?php
class foo {
    function bar() {
        echo 'I am not static!';
    }
}

foo::bar();
?>

以上例程会输出:

Deprecated: Non-static method foo::bar() should not be called statically in - on line 8
I am not static!

摒弃password_hash() salt 的选项写法

password_hash()函数的salt选项已经被弃用,以防止开发人员生成他们自己(通常不安全的) salt。当开发人员不提供salt 时,该函数本身生成一个加密安全的salt,因此不应该需要定制的salt 生成。

摒弃 capture_session_meta SSL上下文选项写法

capture_session_meta SSL上下文选项已经被弃用。现在,通过stream_get_meta_data()函数可以使用SSL元数据。

LDAP的用法 - 摒弃使用 ldap_sort() 函数(被废弃)

下面的函数已经被废弃:

Last updated