Heim Backend-Entwicklung PHP-Tutorial php 实现验证码制造

php 实现验证码制造

Jun 13, 2016 pm 12:21 PM
100 200 image rand

php 实现验证码制作

先给看下 大致的效果

那么接下来的就直接贴代码吧

<span style="color: #000000;">php        </span><span style="color: #800080;">$image</span> = imagecreatetruecolor(100, 30); <span style="color: #008000;">//</span><span style="color: #008000;">创建画布</span>        <span style="color: #800080;">$imagecolor</span> = imagecolorallocate(<span style="color: #800080;">$image</span>, 255, 255, 255);  <span style="color: #008000;">//</span><span style="color: #008000;">背景色</span><span style="color: #000000;">        imagefill(</span><span style="color: #800080;">$image</span>, 0, 0, <span style="color: #800080;">$imagecolor</span>);  <span style="color: #008000;">//</span><span style="color: #008000;">填充背景色</span>        <span style="color: #0000ff;">for</span>(<span style="color: #800080;">$i</span>=0;<span style="color: #800080;">$i</span>$i++ ){                  <span style="color: #008000;">//</span><span style="color: #008000;">循环4位数</span>                <span style="color: #800080;">$fontsize</span> = 6<span style="color: #000000;">;        </span><span style="color: #800080;">$fontcolor</span> = imagecolorallocate(<span style="color: #800080;">$image</span>, <span style="color: #008080;">rand</span>(0, 200), <span style="color: #008080;">rand</span>(0, 200), <span style="color: #008080;">rand</span>(0, 200<span style="color: #000000;">));        </span><span style="color: #800080;">$fontcontent</span> = <span style="color: #008080;">rand</span>(0, 9<span style="color: #000000;">);                </span><span style="color: #800080;">$x</span> = <span style="color: #800080;">$i</span>*100/4 + <span style="color: #008080;">rand</span>(5, 15<span style="color: #000000;">);        </span><span style="color: #800080;">$y</span> = <span style="color: #008080;">rand</span>(5, 10<span style="color: #000000;">);                imagestring(</span><span style="color: #800080;">$image</span>, <span style="color: #800080;">$fontsize</span>, <span style="color: #800080;">$x</span>, <span style="color: #800080;">$y</span>, <span style="color: #800080;">$fontcontent</span>, <span style="color: #800080;">$fontcolor</span><span style="color: #000000;">);    }                </span><span style="color: #0000ff;">for</span>(<span style="color: #800080;">$i</span>=0;<span style="color: #800080;">$i</span>$i++ ){              <span style="color: #008000;">//</span><span style="color: #008000;">循环 添加干扰点</span>                <span style="color: #800080;">$pointcolor</span> = imagecolorallocate(<span style="color: #800080;">$image</span>, <span style="color: #008080;">rand</span>(50, 200), <span style="color: #008080;">rand</span>(50, 200), <span style="color: #008080;">rand</span>(50, 200<span style="color: #000000;">));                </span><span style="color: #800080;">$x</span> = <span style="color: #008080;">rand</span>(1, 99<span style="color: #000000;">);        </span><span style="color: #800080;">$y</span> = <span style="color: #008080;">rand</span>(1, 29<span style="color: #000000;">);                imagesetpixel(</span><span style="color: #800080;">$image</span>, <span style="color: #800080;">$x</span>, <span style="color: #800080;">$y</span>, <span style="color: #800080;">$pointcolor</span><span style="color: #000000;">);    }                </span><span style="color: #0000ff;">for</span>(<span style="color: #800080;">$i</span>=0;<span style="color: #800080;">$i</span>$i++){                <span style="color: #008000;">//</span><span style="color: #008000;">循环 添加干扰线    </span>                <span style="color: #800080;">$linecolor</span> = imagecolorallocate(<span style="color: #800080;">$image</span>, <span style="color: #008080;">rand</span>(100, 250), <span style="color: #008080;">rand</span>(100, 250), <span style="color: #008080;">rand</span>(100, 250<span style="color: #000000;">));                </span><span style="color: #800080;">$x1</span> = <span style="color: #008080;">rand</span>(1, 25<span style="color: #000000;">);        </span><span style="color: #800080;">$x2</span> = <span style="color: #008080;">rand</span>(50, 75<span style="color: #000000;">);                </span><span style="color: #800080;">$y1</span> = <span style="color: #008080;">rand</span>(1, 15<span style="color: #000000;">);        </span><span style="color: #800080;">$y2</span> = <span style="color: #008080;">rand</span>(15, 25<span style="color: #000000;">);                imageline(</span><span style="color: #800080;">$image</span>, <span style="color: #800080;">$x1</span>, <span style="color: #800080;">$y1</span>, <span style="color: #800080;">$x2</span>, <span style="color: #800080;">$y2</span>, <span style="color: #800080;">$linecolor</span><span style="color: #000000;">);    }                </span><span style="color: #008080;">header</span>("content-type:image/png"<span style="color: #000000;">);        imagepng(</span><span style="color: #800080;">$image</span><span style="color: #000000;">);        imagedestroy(</span><span style="color: #800080;">$image</span><span style="color: #000000;">);</span>?>
Nach dem Login kopieren

 

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Crossplay haben?
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie behebe ich den Fehler „undefiniert: rand.Seed' in Golang? Wie behebe ich den Fehler „undefiniert: rand.Seed' in Golang? Jun 25, 2023 am 08:34 AM

Während des Entwicklungs- oder Lernprozesses bei der Verwendung von Golang kann es sein, dass wir auf die Fehlermeldung undefiniert:rand.Seed stoßen. Dieser Fehler tritt normalerweise auf, wenn Sie einen Zufallszahlengenerator verwenden müssen, da Sie in Golang einen Zufallszahlen-Startwert festlegen müssen, bevor Sie die Funktion im Rand-Paket verwenden können. In diesem Artikel wird erläutert, wie Sie diesen Fehler beheben können. 1. Führen Sie das Paket math/rand ein. Zuerst müssen wir das Paket math/rand in den Code einführen. existieren

So nutzen Sie Bing Image Creator kostenlos So nutzen Sie Bing Image Creator kostenlos Feb 27, 2024 am 11:04 AM

In diesem Artikel werden sieben Möglichkeiten vorgestellt, mit dem kostenlosen BingImageCreator eine qualitativ hochwertige Ausgabe zu erhalten. BingImageCreator (jetzt bekannt als ImageCreator für Microsoft Designer) ist einer der großartigen Online-Kunstgeneratoren für künstliche Intelligenz. Es generiert äußerst realistische visuelle Effekte basierend auf Benutzereingaben. Je spezifischer, klarer und kreativer Ihre Aufforderungen sind, desto besser werden die Ergebnisse sein. BingImageCreator hat erhebliche Fortschritte bei der Erstellung hochwertiger Bilder gemacht. Es verwendet jetzt den Dall-E3-Trainingsmodus und zeigt ein höheres Maß an Detailgenauigkeit und Realismus. Allerdings hängt die Fähigkeit, konsistent HD-Ergebnisse zu liefern, von mehreren Faktoren ab, unter anderem von der Geschwindigkeit

So löschen Sie Bilder von Xiaomi-Telefonen So löschen Sie Bilder von Xiaomi-Telefonen Mar 02, 2024 pm 05:34 PM

Wie lösche ich Bilder auf Xiaomi-Handys? Sie können Bilder auf Xiaomi-Handys löschen, aber die meisten Benutzer wissen nicht, wie man Bilder auf Xiaomi-Handys löscht können Sie bei uns vorbeischauen. Mal sehen! So löschen Sie Bilder auf dem Xiaomi-Mobiltelefon 1. Öffnen Sie zunächst die Funktion [Album] im Xiaomi-Mobiltelefon. 2. Überprüfen Sie dann die nicht benötigten Bilder und klicken Sie auf die Schaltfläche [Löschen] in der unteren rechten Ecke Um den Spezialbereich aufzurufen, wählen Sie oben [Papierkorb] aus. 4. Klicken Sie dann direkt auf [Papierkorb leeren], wie in der Abbildung unten gezeigt. 5. Klicken Sie abschließend direkt auf [Permanent löschen].

Imagemagic-Installation Centos und Image-Installations-Tutorial Imagemagic-Installation Centos und Image-Installations-Tutorial Feb 12, 2024 pm 05:27 PM

LINUX ist ein Open-Source-Betriebssystem und daher die erste Wahl für viele Entwickler und Systemadministratoren. Im LINUX-System ist die Bildverarbeitung eine sehr wichtige Aufgabe, und Imagemagick und Image sind zwei sehr beliebte Bildverarbeitungstools Der Artikel führt Sie in die Installation von Imagemagick und Image im Centos-System ein und bietet detaillierte Installationsanleitungen. Imagemagic-Installation Centos-Tutorial Imagemagick ist ein leistungsstarkes Bildverarbeitungs-Toolset, das verschiedene Bildoperationen unter der Befehlszeile ausführen kann. Im Folgenden sind die Schritte zur Installation von Imagemagick auf dem Centos-System aufgeführt: 1

Wie synchronisiert man die Zufallszahlengenerierung in der Golang-Parallelverarbeitung? Wie synchronisiert man die Zufallszahlengenerierung in der Golang-Parallelverarbeitung? Jun 03, 2024 pm 02:53 PM

Synchronisieren der Zufallszahlengenerierung in der gleichzeitigen Go-Programmierung: Verwenden Sie einen Mutex (sync.Mutex), um den Zugriff auf den Zufallszahlengenerator rand.Rand zu steuern. Jede Goroutine erhält die Mutex-Sperre, bevor sie Zufallszahlen generiert, und gibt die Mutex-Sperre nach der Generierung frei. Dadurch wird sichergestellt, dass jeweils nur eine Goroutine auf den Zufallszahlengenerator zugreifen kann, wodurch Datenrennen vermieden werden.

So lösen Sie das Problem der Generierung derselben Zufallszahlen mithilfe der PHP-Rand-Funktion So lösen Sie das Problem der Generierung derselben Zufallszahlen mithilfe der PHP-Rand-Funktion Mar 23, 2023 am 09:17 AM

Die Funktion rand() verwendet bei jedem Aufruf dieselben anfänglichen Startwerte. Der voreingestellte anfängliche Startwert wird aus der Uhrzeit des Betriebssystems ermittelt, hat jedoch nur eine Genauigkeit im Mikrosekundenbereich. Das heißt, innerhalb einer sehr kurzen Zeitspanne verwenden viele rand()-Funktionsaufrufe denselben anfänglichen Startwert, was zur gleichen Zufallszahlengenerierung führt. Wie kann man dieses Problem lösen?

imagefilledrectangle()-Funktion in PHP imagefilledrectangle()-Funktion in PHP Aug 30, 2023 am 09:05 AM

Die Funktion imagefilledrectangle() zeichnet ein gefülltes Rechteck. Syntax imagefilledrectangle($img,$x1,$y1,$x2,$y2,$color) Parameter image Verwenden Sie imagecreatetruecolor(), um ein leeres Bild zu erstellen. x1Die x-Koordinate von Punkt 1. y1 Die y-Koordinate von Punkt 1. x2 Die x-Koordinate von Punkt 2. y2 Die y-Koordinate von Punkt 2. Farbe Füllfarbe. Rückgabewert Die Funktion imagefilledrectangle() wird erfolgreich zurückgegeben

In C/C++ werden rand() und srand() wie folgt übersetzt: In C/C++ werden rand() und srand() wie folgt übersetzt: Sep 05, 2023 pm 03:25 PM

In diesem Artikel besprechen wir das Funktionsprinzip, die Syntax und Beispiele der Funktionen rand() und srand() in C++STL. Was ist Rand()? Die Funktion rand() ist eine in C++STL integrierte Funktion und wird in der Header-Datei definiert. rand() wird verwendet, um eine Reihe von Zufallszahlen zu generieren. Wir können diese Funktion verwenden, wenn wir Zufallszahlen im Code generieren möchten. Genau wie wenn wir ein Ludo-Spiel in C++ erstellen, müssen wir eine beliebige Zufallszahl zwischen 1 und 6 generieren, damit wir rand() verwenden können, um die Zufallszahl zu generieren. Zufallszahlen werden mithilfe eines Algorithmus generiert, der bei jedem Aufruf dieser Funktion eine Folge unkorrelierter Zahlen liefert. Genauso wie wir eine Zufallszahl zwischen 1 und 6 generieren möchten, können wir diese verwenden

See all articles