>백엔드 개발 >PHP 튜토리얼 >中文验证码如何选取

中文验证码如何选取

WBOY
WBOY원래의
2016-06-13 10:37:01908검색

中文验证码怎么选取?
英文验证码用的是定义26个大小写字母加数字的数组随机下标来获得随机的验证码 
请问中文验证码要怎么获得随机的中文?同英文一样定义中文的数组的话会不会太大?

------解决方案--------------------
注意到汉字的 UCS-2 编码从 0x4e00 到 0x9fa6 是连续的
所以你只需
$ch = iconv('ucs-2', 'utf-8', pack('n', rand(0x4e00, 0x9fa6)));
就可随机得到一个汉字


------解决方案--------------------
建一个常用字库,而且验证功能不需要列举所有常用字

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.