ホームページ  >  記事  >  バックエンド開発  >  PHP認証コードの作り方

PHP認証コードの作り方

炎欲天舞
炎欲天舞オリジナル
2017-08-07 09:34:483329ブラウズ

PHPは主に配列関連の関数を使用して検証コードを作成します

<?php
    header("content-type:text/html;charset=UTF-8");
    //建立3个范围数组
    $shuzi = range(0,9);
    $zimuda = range(&#39;A&#39;,&#39;Z&#39;);
    $zimuxiao = range(&#39;a&#39;,&#39;z &#39;);

    //将这3个数组合并成新数组
    $arr=array_merge($shuzi,$zimuxiao,$zimuda);

    //遍历新数组
    foreach ($arr as $key => $value) {
        //如果新数组里的元素包含下面的字,则将其删除(unset);
        if($value == &#39;0&#39; || $value == &#39;1&#39; ||$value == &#39;2&#39; ||$value == &#39;o&#39;  ||$value == &#39;O&#39; 
            ||$value == &#39;I&#39; ||$value == &#39;i&#39; ||$value == &#39;Z&#39; ||$value == &#39;z&#39; ||$value == &#39;l&#39;){
            //删除键,值也随之删除
            unset ($arr[$key]);
            }
        }

    //将数组 元素打乱,其KEY值跟随元素被打乱
    shuffle($arr);
    //随机取出原数组的4个key值
    $arr_rand = array_rand($arr,4);
    //将原数组的key遍历输出,得到4个随机验证码
    foreach ($arr_rand as $value) {
        echo $arr[$value];
    }

    //优化一下:0,1,2这3个数原本就需要排除,刚好在数组最前、连续,在定义范围数组的时候可以不写,直接从3开始,减少if判断;大小写字母Z在最后也可以不写

以上がPHP認証コードの作り方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。