目录搜索
文字

CodeIgniter提供了一组兼容性功能,使您可以使用PHP本身可用的功能,但只能使用更高版本或取决于特定扩展名的功能。

作为自定义实现,这些函数自身也会有一些依赖项,但如果PHP安装程序本身不提供这些依赖项,它们仍然很有用。

注意

与常见功能非常相似,兼容性功能始终可用,只要满足其相关性即可。

  • 密码散列

    • 依赖

    • 常量

    • 功能参考

  • 哈希(消息摘要)

    • 依赖

    • 功能参考

  • 多字节字符串

    • 依赖

    • 功能参考

  • 标准函数

    • 依赖

    • 功能参考

密码散列

这组兼容性函数提供了PHP的标准密码散列扩展的“后端”,否则这些扩展只能在PHP 5.5之后才可用。

依赖

  • PHP 5.3.7

  • CRYPT_BLOWFISH support for crypt()

常量

  • PASSWORD_BCRYPT

  • PASSWORD_DEFAULT

功能参考

password_get_info($hash)

参数:

$ hash(字符串) - 密码哈希

返回:

有关散列密码的信息

返回类型:

排列

  • $ hash字符串) - 密码哈希

返回:有关散列密码的信息
Return type:  array
有关更多信息,请参阅[PHP手册的密码\ _get \ _info()](http://php.net/password_get_info)。

password_hash($password, $algo[, $options = array()])

参数:

$ password(string) - 纯文本密码$ algo(int) - 散列算法$ options(array) - 散列选项

返回:

散列密码或FALSE失败

返回类型:

  • $密码字符串) - 纯文本密码

  • $ algoint) - 哈希算法

  • $选项数组) - 散列选项

Returns:  Hashed password or FALSE on failure
Return type:  string
有关更多信息,请参阅[用于密码的PHP手册\ _hash()](http://php.net/password_hash)。

注意

除非你提供你自己的(和有效的)salt,否则这个函数进一步依赖于可用的CSPRNG源。以下每一项都可以满足以下要求: - mcrypt_create_iv()使用MCRYPT_DEV_URANDOM- openssl_random_pseudo_bytes()-  / dev / arandom  -  / dev / urandom

password_needs_rehash()

参数:

$ hash(字符串) - 密码散列$ algo(int) - 散列算法$ options(数组) - 散列选项

返回:

如果哈希应该重新映射以匹配给定算法和选项,则为TRUE;否则为FALSE

返回类型:

布尔

  • $ hash字符串) - 密码哈希

  • $ algoint) - 哈希算法

  • $选项数组) - 散列选项

返回:如果哈希应该重新映射以匹配给定的算法和选项,则返回TRUE;否则返回FALSE
Return type:  bool
有关更多信息,请参阅[PHP手册中的密码\ _needs \ _rehash()](http://php.net/password_needs_rehash)。

password_verify($password, $hash)

参数:

$ password(字符串) - 纯文本密码$ hash(字符串) - 密码哈希

返回:

如果密码与散列相匹配则为TRUE,否则为FALSE

返回类型:

布尔

  • $密码字符串) - 纯文本密码

  • $ hash字符串) - 密码哈希

返回:如果密码与哈希匹配,则返回TRUE;否则返回FALSE
Return type:  bool
有关更多信息,请参阅[PHP手册的密码\ _verify()](http://php.net/password_verify)。

哈希(消息摘要)

这个兼容层包含hash_equals()hash_pbkdf2()函数的backports ,它们分别需要PHP 5.6和/或PHP 5.5。

依赖

  • 没有

功能参考

hash_equals($known_string, $user_string)

参数:

$ known_string(string) - 已知字符串$ user_string(字符串) - 用户提供的字符串

返回:

如果字符串匹配则为TRUE,否则为FALSE

返回类型:

  • $ known_string字符串) - 已知字符串

  • $ user_string字符串) - 用户提供的字符串

返回:如果字符串匹配则返回TRUE,否则返回FALSE
Return type:  string
有关更多信息,请参阅[PHP手册中的hash \ _equals()](http://php.net/hash_equals)。

hash_pbkdf2($algo, $password, $salt, $iterations[, $length = 0[, $raw_output = FALSE]])

参数:

$ algo(string) - 哈希算法$ password(string) - 密码$ salt(字符串) - 哈希salt $ iterations(int) - 派生期间执行的迭代次数$ length(int) - 输出字符串长度$ raw_output(bool) - 是否返回原始二进制数据

返回:

密码派生密钥或FALSE失败

返回类型:

  • $ algo字符串) - 哈希算法

  • $密码字符串) - 密码

  • $盐字符串) - 哈希盐

  • $ iterationsint) - 派生期间要执行的迭代次数

  • $ lengthint) - 输出字符串长度

  • $ raw_outputbool) - 是否返回原始二进制数据

Returns:  Password-derived key or FALSE on failure
Return type:  string
有关更多信息,请参阅[PHP手册中的散列\ _pbkdf2()](http://php.net/hash_pbkdf2)。

多字节字符串

这组兼容性函数对PHP的多字节字符串扩展提供了有限的支持。由于替代解决方案有限,只有少数功能可用。

注意

当字符集参数被忽略时,$config['charset']将被使用。

依赖

  • iconv extension

重要

这种依赖是可选的,并且这些函数将一直被声明。如果iconv不可用,它们将回退到它们的非mbstring版本。

重要

在提供字符集的情况下,它必须受iconv支持并且采用它可识别的格式。

注意

对于您对实际的mbstring扩展名拥有依赖性检查,请使用该MB_ENABLED常量。

功能参考

mb_strlen($str[, $encoding = NULL])

参数:

$ str(string) - 输入字符串$ encoding(string) - 字符集

返回:

输入字符串中的字符数或失败时的FALSE

返回类型:

  • $ strstring) - 输入字符串

  • $编码字符串) - 字符集

返回:输入字符串中的字符数或失败时的FALSE
Return type:  string
有关更多信息,请参阅[PHP的mb \ _strlen()手册](http://php.net/mb_strlen)。

mb_strpos($haystack, $needle[, $offset = 0[, $encoding = NULL]])

参数:

$ haystack(string) - 在$ needle(string)中搜索的字符串 - 搜索$ offset的字符串的一部分(int) - 搜索偏移量$ encoding(string) - 字符集

返回:

找到$ needle的数字字符位置,如果未找到,则为FALSE

返回类型:

mixed

  • $ haystackstring) - 要搜索的字符串

  • $ needlestring) - 要搜索的字符串的一部分

  • $ offsetint) - 搜索偏移量

  • $编码字符串) - 字符集

Returns:  Numeric character position of where $needle was found or FALSE if not found
Return type:  mixed
For more information, please refer to the [PHP manual for mb\_strpos()](http://php.net/mb_strpos).

mb_substr($str, $start[, $length = NULL[, $encoding = NULL]])

参数:

$ str(string) - 输入字符串$ start(int) - 第一个字符的位置$ length(int) - 最大字符数$ encoding(string) - 字符集

返回:

由$ start和$ length指定的$ str部分或失败时的FALSE部分

返回类型:

  • $ strstring) - 输入字符串

  • $ startint) - 第一个字符的位置

  • $ lengthint) - 最大字符数

  • $编码字符串) - 字符集

Returns:  Portion of $str specified by $start and $length or FALSE on failure
Return type:  string
For more information, please refer to the [PHP manual for mb\_substr()](http://php.net/mb_substr).

标准函数

这组兼容性函数提供了对PHP中几个标准函数的支持,否则这些函数需要更新的PHP版本。

依赖

  • 没有

功能参考

array_column(array $array, $column_key[, $index_key = NULL])

参数:

$ array(array) - 从$ column_key获取结果的数组(混合) - 从$ index_key返回值的列的键(混合) - 用于返回值的键

返回:

表示输入数组中单个列的值数组

返回类型:

排列

  • $ arrayarray) - 从中获取结果的数组

  • $ column_keymixed) - 从中返回值的列的键

  • $ index_keymixed) - 用于返回值的键

Returns:  An array of values representing a single column from the input array
Return type:  array
For more information, please refer to the [PHP manual for array\_column()](http://php.net/array_column).

hex2bin($data)

参数:

$ data(array) - 数据的十六进制表示

返回:

给定数据的二进制表示

返回类型:

  • $ dataarray) - 数据的十六进制表示

返回:给定数据的二进制表示
Return type:  string
上一篇:下一篇: