Rumah rangka kerja php ThinkPHP Pengenalan terperinci kepada kaedah pemasangan pemalam kod pengesahan ThinkPHP

Pengenalan terperinci kepada kaedah pemasangan pemalam kod pengesahan ThinkPHP

Apr 07, 2023 am 09:27 AM

Dalam proses pembangunan tapak web atau aplikasi, kod pengesahan ialah langkah keselamatan yang penting. ThinkPHP, sebagai rangka kerja pembangunan PHP yang sangat baik, menyediakan pembangun kaedah penyepaduan kod pengesahan yang mudah. Artikel ini akan memperkenalkan secara terperinci kaedah pemasangan kod pengesahan ThinkPHP.

Pertama, kita perlu membuka laman web rasmi ThinkPHP dan mencari kandungan yang berkaitan dengan kod pengesahan. Daripada hasil carian, kita boleh melihat beberapa dokumen kod pengesahan dan pemalam kod pengesahan yang telah dibangunkan. Dalam artikel ini, kami akan menggunakan pemalam kod pengesahan yang disediakan secara rasmi dan menyepadukan kod pengesahan dengan menulis kod secara manual.

1. Gunakan pemalam kod pengesahan rasmi

Dalam dokumentasi rasmi, kita boleh mencari cara menggunakan pemalam kod pengesahan ThinkPHP. Untuk menggunakan pemalam rasmi, anda perlu melakukan langkah berikut:

1.1 Cipta folder Verify baharu dalam direktori lanjutan rangka kerja ThinkPHP dan masukkan pemalam kod pengesahan yang dimuat turun ke dalamnya.

1.2 Lihat fail konfigurasi ThinkPHP dan halakan item konfigurasi kod pengesahan ke folder tempat pemalam kod pengesahan baru diletakkan. Kod khusus adalah seperti berikut:

'verify' =>[
    //使用中文验证码
    'useZh'=>false,
    //验证码字体大小(px)
    'fontSize'=>25,
    //验证码位数
    'length'=>5,
    //验证码图片宽度(像素)
    'imageW'=>0,
    //验证码图片高度(像素)
    'imageH'=>0,
    //关闭验证码杂点 
    'useNoise'=>true,
    //背景颜色(16进制色值)
    'bg'=>[243, 251, 254],
    //需要包含的字符集合
    'codeSet'=>'0123456789',
    //验证码字符间隔(px)
    'seKey'=>"ThinkPHP.CN_",//密钥
    ...
],
Salin selepas log masuk

Perlu diambil perhatian bahawa dua parameter imageW dan imageH boleh ditetapkan mengikut situasi sebenar. Jika tidak ditetapkan, saiz imej kod pengesahan akan sama dengan saiz imej output secara lalai.

1.3 Di mana sahaja kod pengesahan perlu dikeluarkan, gunakan kod berikut untuk menyepadukan pemalam kod pengesahan rasmi:

$img = ( new \Think\Verify())->entry();  
echo $img;
Salin selepas log masuk

Selepas menjalankan kod, kita dapat melihat bahawa pengesahan kod telah berjaya disepadukan:

Pengenalan terperinci kepada kaedah pemasangan pemalam kod pengesahan ThinkPHP

2 Tulis kod penjanaan kod pengesahan secara manual

Selain menggunakan pemalam rasmi, kami juga boleh secara manual. tulis kod penjanaan kod pengesahan. Proses khusus adalah seperti berikut:

2.1 Pertama, kita perlu mencipta kelas kod pengesahan baharu dan menulis kaedah penjanaan dan output kod pengesahan di dalamnya. Kod berikut ialah bahagian penting dalam kelas kod pengesahan berkod tangan:

class VerifyCode
{
    //验证码字符长度
    private $length = 4;

    //验证码字符数组
    private $codes = [];

    //验证码生成
    public function generate()
    {   
        //生成字符数组
        $this->codes = [];
        for($i = 0; $i length; ++$i) {
            $this->codes[] = chr(mt_rand(48, 57));
        }

        //保存字符数组到session中
        session('verifycode', implode('', $this->codes));

        //开启输出缓存
        ob_start();
        header('Content-Type:/image/png');

        //创建验证码图片
        $image = imagecreate(100, 40);

        //设置画布背景颜色 
        $bg_color = imagecolorallocate($image, 238, 238, 238); 
        imagefill($image, 0, 0, $bg_color);

        //绘制验证码字符
        for($i = 0; $i length; ++$i) {
            $font_file = '/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf';
            $text_color = imagecolorallocate(
                $image, mt_rand(0, 150), mt_rand(0, 150), mt_rand(0, 150));
            imagettftext($image, 24, mt_rand(-20, 20), 5 + $i * 25, 30, 
                         $text_color, $font_file, $this->codes[$i]);
        }

        //输出验证码图片
        imagepng($image);
        imagedestroy($image);
        $img = ob_get_contents();
        ob_end_clean();

        return $img;
    }
}
Salin selepas log masuk

2.2 Gunakan kod berikut untuk menjana dan mengeluarkan kod pengesahan yang memerlukan kod pengesahan:

$vf = new VerifyCode();
echo $vf->generate();
Salin selepas log masuk

Di Atas Kandungan ialah kaedah penyepaduan pantas untuk kod pengesahan ThinkPHP Pada masa ini, kod pengesahan telah menjadi langkah keselamatan pembangunan yang sangat biasa. Sebagai pembangun, kami perlu belajar cara menyepadukannya dengan cepat dan memastikan aplikasi kami selamat.

Atas ialah kandungan terperinci Pengenalan terperinci kepada kaedah pemasangan pemalam kod pengesahan ThinkPHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apakah perbezaan antara buku berfikir dan thinkpad Apakah perbezaan antara buku berfikir dan thinkpad Mar 06, 2025 pm 02:16 PM

Artikel ini membandingkan Lenovo's ThinkBook dan ThinkPad Laptop Lappt. ThinkPads mengutamakan ketahanan dan prestasi untuk profesional, sementara Thinkbooks menawarkan pilihan yang bergaya dan berpatutan untuk kegunaan seharian. Perbezaan utama terletak pada kualiti membina, p

Cara Mencegah Tutorial Suntikan SQL Cara Mencegah Tutorial Suntikan SQL Mar 06, 2025 pm 02:10 PM

Artikel ini menerangkan bagaimana untuk mencegah suntikan SQL dalam aplikasi ThinkPHP. Ia menekankan menggunakan pertanyaan parameter melalui pembina pertanyaan ThinkPHP, mengelakkan penggabungan SQL langsung, dan melaksanakan pengesahan input & sanitisasi yang mantap. AD

Bagaimana Menangani Kerentanan ThinkPhp? Bagaimana Menangani Kerentanan ThinkPhp? Mar 06, 2025 pm 02:08 PM

Artikel ini membincangkan kelemahan ThinkPHP, menekankan penampalan, pencegahan, dan pemantauan. Ia memperincikan pengendalian kelemahan tertentu melalui kemas kini, patch keselamatan, dan pemulihan kod. Langkah proaktif seperti konfigurasi selamat, input

Cara Memasang Perisian yang Dibangunkan oleh ThinkPhp Cara Memasang Tutorial Cara Memasang Perisian yang Dibangunkan oleh ThinkPhp Cara Memasang Tutorial Mar 06, 2025 pm 02:09 PM

Butiran artikel ini Pemasangan perisian ThinkPHP, meliputi langkah -langkah seperti memuat turun, pengekstrakan, konfigurasi pangkalan data, dan pengesahan kebenaran. Ia menangani keperluan sistem (versi PHP, pelayan web, pangkalan data, sambungan), pemasangan biasa

Cara Memperbaiki Kerentanan ThinkPhp Bagaimana Menangani Kerentanan ThinkPhp Cara Memperbaiki Kerentanan ThinkPhp Bagaimana Menangani Kerentanan ThinkPhp Mar 06, 2025 pm 02:04 PM

Tutorial ini menangani kelemahan berfikir biasa. Ia menekankan kemas kini yang kerap, pengimbas keselamatan (RIPS, Sonarqube, Snyk), semakan kod manual, dan ujian penembusan untuk pengenalpastian dan pemulihan. Langkah pencegahan termasuk selamat

Bagaimanakah saya boleh menggunakan ThinkPhp untuk membina aplikasi baris arahan? Bagaimanakah saya boleh menggunakan ThinkPhp untuk membina aplikasi baris arahan? Mar 12, 2025 pm 05:48 PM

Artikel ini menunjukkan aplikasi baris arahan bangunan (CLI) menggunakan keupayaan CLI ThinkPHP. Ia menekankan amalan terbaik seperti reka bentuk modular, suntikan ketergantungan, dan pengendalian ralat yang mantap, sambil menonjolkan perangkap biasa seperti Inu

Langkah terperinci untuk menyambung ke pangkalan data oleh ThinkPhp Langkah terperinci untuk menyambung ke pangkalan data oleh ThinkPhp Mar 06, 2025 pm 02:06 PM

Panduan ini butiran Pangkalan Data Sambungan dalam ThinkPHP, yang memberi tumpuan kepada konfigurasi melalui Database.php. Ia menggunakan PDO dan membolehkan ORM atau interaksi SQL langsung. Panduan ini meliputi masalah penyelesaian masalah kesilapan sambungan biasa, menguruskan pelbagai sambungan, en

Cara Menggunakan Tutorial ThinkPhp Cara Menggunakan Tutorial ThinkPhp Mar 06, 2025 pm 02:11 PM

Artikel ini memperkenalkan ThinkPhp, kerangka PHP sumber terbuka. IT memperincikan seni bina, ciri-ciri (penghalaan, interaksi pangkalan data), kelebihan (perkembangan pesat, kemudahan penggunaan), dan kekurangan yang berpotensi (potensi kejuruteraan, commun

See all articles