Heim >Backend-Entwicklung >PHP-Tutorial >Sicherheitsverarbeitung von PHP-Webanfragen

Sicherheitsverarbeitung von PHP-Webanfragen

不言
不言Original
2018-07-05 15:27:411813Durchsuche

1. Der Unterschied zwischen Urlencode und Rawurlencode

<?php 
test(&#39;https://tieba.baidu.com/f?kw=2&fr=wwwt&#39;);
test(&#39;:/?= &#&#39;);
test(&#39;测试&#39;);
function test($s)
{
    echo "<b>urlencode(&#39;$s&#39;)</b> = [<b>";
    var_dump(urlencode($s));
    echo "</b>]<br/>";
    echo "<b>rawurlencode(&#39;$s&#39;)</b> = [<b>";
    var_dump(rawurlencode($s));
    echo "</b>]<br/>";
}

//运行结果
urlencode(&#39;https://tieba.baidu.com/f?kw=2&fr=wwwt&#39;) = [
D:\software\wamp\www\linux\webApi\test.php:9:string &#39;https%3A%2F%2Ftieba.baidu.com%2Ff%3Fkw%3D2%26fr%3Dwwwt&#39; (length=54)
]
rawurlencode(&#39;https://tieba.baidu.com/f?kw=2&fr=wwwt&#39;) = [
D:\software\wamp\www\linux\webApi\test.php:12:string &#39;https%3A%2F%2Ftieba.baidu.com%2Ff%3Fkw%3D2%26fr%3Dwwwt&#39; (length=54)
]
urlencode(&#39;:/?= &#&#39;) = [
D:\software\wamp\www\linux\webApi\test.php:9:string &#39;%3A%2F%3F%3D+%26%23&#39; (length=19)
]
rawurlencode(&#39;:/?= &#&#39;) = [
D:\software\wamp\www\linux\webApi\test.php:12:string &#39;%3A%2F%3F%3D%20%26%23&#39; (length=21)
]
urlencode(&#39;测试&#39;) = [
D:\software\wamp\www\linux\webApi\test.php:9:string &#39;%E6%B5%8B%E8%AF%95&#39; (length=18)
]
rawurlencode(&#39;测试&#39;) = [
D:\software\wamp\www\linux\webApi\test.php:12:string &#39;%E6%B5%8B%E8%AF%95&#39; (length=18)
]

Wie aus den obigen Ausführungsergebnissen ersichtlich ist, führen die beiden Methoden Urlencode und Rawurlencode bei der Verarbeitung von Buchstaben, Zahlen und Sonderzeichen zu denselben Ergebnissen , und Chinesisch, der einzige Unterschied ist die Verarbeitung von Leerzeichen, URL-Code wird als „%20“ verarbeitet

2. Funktion strip_tags: HTML- und PHP-Tags entfernen

Hinweis: Diese Funktion kann alle im String enthaltenen HTML- und PHP-Tag-Strings entfernen. Wenn die HTML- und PHP-Tags des Strings ursprünglich falsch sind, beispielsweise das Größer-als-Symbol fehlt, wird ebenfalls ein Fehler zurückgegeben. Diese Funktion hat die gleiche Funktion wie fgetss(). fgetss liest die Datei aus der Datei und entfernt die HTML- und PHP-Tags.

<?php

echo strip_tags("Hello <b>world!</b>");

Ergebnisse ausführen

Hello world!

3. Funktion htmlspecialchars, konvertiert Sonderzeichen in das HTML-Format

Funktion htmlspecialchars() konvertiert vordefinierte Zeichen. Konvertiert in HTML-Entitäten . Die vordefinierten Zeichen für
sind:
& (kaufmännisches Und) wird zu &
“ (doppeltes Anführungszeichen) wird zu „
“ (einfaches Anführungszeichen) wird zu „
0b0e4ad2645876e10ed6757e23787217 (größer als) wird zu>

<?php
echo htmlspecialchars("This is some <b>bold</b> text.&");

Laufergebnis

This is some <b>bold</b> text.&

Die Funktion htmlentities wandelt alle Zeichen in HTML-Strings um

Vielleicht bereuen Sie immer noch, dass htmlspecialchars nur 4 HTML-Tags verarbeiten kann, also bereuen Sie es nicht, jetzt zu konvertieren alle Charaktere.

<?php

echo htmlentities("<? W3S?h????>");

Ergebnis ausführen

<? W3S?h????>

5. Addslashes, die Funktion gibt eine Zeichenfolge mit einem Backslash zurück, der vor den vordefinierten Zeichen hinzugefügt wird.

Die vordefinierten Zeichen sind:
Einfaches Anführungszeichen (')
Doppeltes Anführungszeichen (")
Backslash ()
NULL

<?php

echo addslashes(&#39;Shanghai is the "biggest" city in China.&#39;);

Laufergebnis

Shanghai is the \"biggest\" city in China.

Stripslashes ist die Zeichenfolge, auf die von „restore addslashes“ verwiesen wird. Weitere Informationen zu verwandten Inhalten finden Sie auf der chinesischen PHP-Website

Verwandte Empfehlungen:

So verwenden Sie PHP-Cocket

PHP-Quellcode PHP - Tierverschlüsselung

PHP-Implementierung des E-Mail-Versands über das QQ-Postfach

Das obige ist der detaillierte Inhalt vonSicherheitsverarbeitung von PHP-Webanfragen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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
Vorheriger Artikel:So verwenden Sie PHP-CocketNächster Artikel:So verwenden Sie PHP-Cocket