password_hash returns 空
password_hash returns NULL
为什么 documentation 声明 password_hash
可以 return 字符串或值 false,但下面的代码行 returns NULL?
$password = password_hash($password1, PASSWORD_BDCRYPT, array( 'cost' => 10 ));
尽管没有记录,但当为算法提供不正确的值时,函数会 return NULL。
当前支持的常量是:
PASSWORD_BCRYPT
PASSWORD_DEFAULT
并且在这种情况下的拼写错误(PASSWORD_BDCRYPT
而不是 PASSWORD_BCRYPT
)导致传递 NULL 值,这反过来导致与 return 相同的值。
编辑:之前未定义的任何其他字符串也将评估为 NULL。
如前所述,不正确的参数会导致 NULL 被 returned。只是为了完整:请注意,这不仅适用于不正确的算法编号,还适用于提供不正确的 $options 参数 - 例如呼叫:
password_hash('something', PASSWORD_DEFAULT, 10);
也将 return NULL,没有其他错误。
为什么 documentation 声明 password_hash
可以 return 字符串或值 false,但下面的代码行 returns NULL?
$password = password_hash($password1, PASSWORD_BDCRYPT, array( 'cost' => 10 ));
尽管没有记录,但当为算法提供不正确的值时,函数会 return NULL。
当前支持的常量是:
PASSWORD_BCRYPT
PASSWORD_DEFAULT
并且在这种情况下的拼写错误(PASSWORD_BDCRYPT
而不是 PASSWORD_BCRYPT
)导致传递 NULL 值,这反过来导致与 return 相同的值。
编辑:之前未定义的任何其他字符串也将评估为 NULL。
如前所述,不正确的参数会导致 NULL 被 returned。只是为了完整:请注意,这不仅适用于不正确的算法编号,还适用于提供不正确的 $options 参数 - 例如呼叫:
password_hash('something', PASSWORD_DEFAULT, 10);
也将 return NULL,没有其他错误。