生成随机字符串应该用random_bytes还是openssl_random_pseudo_bytes
以前一直用的openssl_random_pseudo_bytes,在Illuminate\Support\Str::random发现了random_bytes,对比如下:
- openssl_random_pseudo_bytes依赖OpenSSL扩展
- random_bytes是PHP 7中的新增功能,它是原生的始终可用的PHP方法,用于生成随机字节,该方法根据所使用的平台选择内部的随机性源。random_bytes通过提供一个始终可用的功能并使用可能的最佳随机性来源来简化此操作。如果您可以专门针对PHP 7+,则应该使用它。
本作品采用《CC 协议》,转载必须注明作者和本文链接
分享一个php手册上使用random_bytes生成随机字符串的函数: