Heim >php教程 >php手册 >Einführung in die Verwendung von PHP, daddslashes_php-Grundlagen

Einführung in die Verwendung von PHP, daddslashes_php-Grundlagen

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-05-16 09:00:332661Durchsuche

Beispielcode:

Code kopieren Der Code lautet wie folgt:

@set_magic_quotes_runtime(0);
$MQG = get_magic_quotes_gpc();

if(!$MQG && $_POST) $_POST = dadslashes($_POST);
if(!$MQG && $_GET) $_GET = dadslashes ($_GET );

//Übersetzungszeichen function
function daddslashes($string) {
if(!is_array($string)) return addslashes($string); $string as $key => $val) $string[$key] = dadslashes($val);
return $string
}


PHP bietet zwei Annehmlichkeiten Für uns Die magischen Referenzfunktionen magic_quotes_gpc und magic_quotes_runtime zum Zitieren von Daten Wenn diese beiden Funktionen in php.ini auf ON gesetzt sind, fügen sie automatisch Backslashes hinzu, wenn die von uns zitierten Daten auf einfache Anführungszeichen ' und doppelte Anführungszeichen " und Backslashes stoßen. Schrägstriche helfen uns Symbole werden automatisch übersetzt, um den korrekten Betrieb von Datenoperationen sicherzustellen. Unter verschiedenen PHP-Versionen oder unterschiedlichen Serverkonfigurationen sind jedoch einige magic_quotes_gpc und magic_quotes_runtime auf „Ein“ und andere auf „Aus“ gesetzt, sodass das von uns geschriebene Programm beides erfüllen muss Was ist also der Unterschied zwischen den Funktionen magic_quotes_gpc und magic_quotes_runtime? Geltungsbereich ist: Web-Client
Server; Zeitpunkt der Aktion: Die Anfrage startet beispielsweise, wenn das Skript ausgeführt wird

Geltungsbereich: Aus der Datei Die gelesenen Daten können aus einer SQL-Abfrage abgerufen werden. Aktionszeit: Jedes Mal, wenn das Skript auf die im laufenden Zustand generierten Daten zugreift, wirkt sich der Einstellungswert von magic_quotes_gpc auf den durch /Cookies erhaltenen Einstellungswert aus von magic_quotes_runtime wirkt sich auf die aus der Datei gelesenen Daten oder die aus der Datenbankabfrage erhaltenen Daten aus
Beispiel:




Code kopieren


Der Code lautet wie folgt:


$data1 = $_POST['aaa'];
$data2 = implode(file('1.txt' )); 🎜>if(get_magic_quotes_gpc()){
//Schreiben Sie die Daten $data1 direkt in die Datenbank (automatische Übersetzung)
}else{
$data1 = addslashes($data1) ; Schreiben Sie Daten $data1 in die Datenbank und verwenden Sie die Funktion (addslashes() zum Übersetzen) } if(get_magic_quotes_runtime()){ //Daten $data2 direkt schreiben Betreten Sie die Datenbank (automatische Übersetzung). ) //Die aus der Datenbank gelesenen Daten müssen einmal nach „stripslashes()“ ausgegeben werden. Die Funktion von „stripslashes()“ besteht darin, Folgendes zu entfernen:, was das Gegenteil von „addslashes()“ ist.}else{
$ data2 = addslashes($data2);
//Daten $data2 in die Datenbank schreiben
//Die aus der Datenbank gelesenen Daten werden direkt ausgegeben
}



Die meisten Der Hauptunterschied besteht in den beiden oben genannten Punkten: Sie zielen auf unterschiedliche Verarbeitungsobjekte ab.
Der Einstellungswert von magic_quotes_gpc wirkt sich auf die über Get/Post/Cookies erhaltenen Daten aus.
Der Einstellungswert von magic_quotes_runtime wirkt sich auf die von Data erhaltenen Daten aus Aus der Datei oder den aus der Datenbankabfrage erhaltenen Daten lesen


Übrigens sind hier ein paar Funktionen, die ich verknüpfen möchte:

set_magic_quotes_runtime():
Set the magic_quotes_runtime value . 0=off.1=on :
Magic_quotes_runtime-Wert anzeigen. 0=aus. 1=ein.

Beachten Sie, dass es keine set_magic_quotes_gpc()-Funktion gibt, d. h. der Wert von magic_quotes_gpc kann nicht im Programm festgelegt werden.
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