Heim  >  Artikel  >  Backend-Entwicklung  >  Was bedeutet PHP-Binärsicherheit?

Was bedeutet PHP-Binärsicherheit?

WBOY
WBOYOriginal
2016-08-08 09:20:381459Durchsuche

In PHP gibt es das Konzept des Strings. In der Zeichenfolge
beträgt die Größe jedes Zeichens ein Byte (im Vergleich zu PHP ist jedes Zeichen in Java ein Zeichen, also ein UTF8-Zeichen, und jedes Zeichen in der Sprache C kann zur Kompilierungszeit ausgewählt werden). . Im
Byte gibt es ASCII-Codezeichen wie ABC, 123, abc und einige Sonderzeichen wie Wagenrücklauf, Rücktaste usw.
Es gibt viele Sonderzeichen, die nicht angezeigt werden können. Mit anderen Worten, es gibt keinen Standard für ihre Anzeigemethoden. Beispielsweise steht der Buchstabe A überall von Code 65 bis Code 97. An einigen Stellen wird das vorangehende Zeichen tatsächlich ersetzt. Es wird ein Zeichen zurückgegeben.
PHP basiert auf C, daher werden viele Beschreibungen mit C verglichen. Bei C-Strings besteht eine klassische Definition darin, den String mit dem Code 0 zu beenden. Wenn man also von einer solchen Zeichenfolge ausgeht, sind die Kodierungen der drei darin enthaltenen Zeichen 97, 0 bzw. 97. Wenn es dann in C eine zu str_replace äquivalente Funktion gibt und Sie diese verwenden, um 97 durch 98 zu ersetzen, wird diese Funktion als beendet betrachtet, wenn sie 0 liest, und Sie erhalten 98,0,97. Dementsprechend ist str_replace in PHP binärsicher, sodass diese 0 nicht als spezielles Endsymbol betrachtet wird und das Ergebnis 98, 0, 98 ist.
[Binäre Sicherheit] Im PHP-Dokument bedeutet es im Grunde Folgendes: Funktionen mit ähnlichen Funktionen in der C-Sprache behandeln einige Zeichen speziell, aber diese Funktion in PHP behandelt alle Zeichen gleich, das ist nicht nötig Machen Sie sich keine Sorgen darüber, dass Sonderzeichen die Verarbeitung beeinträchtigen, insbesondere nicht über die Codierung von 0-Zeichen.

Das Obige hat die Bedeutung der PHP-Binärsicherheit und ihrer Aspekte vorgestellt. Ich hoffe, dass es für Freunde hilfreich sein wird, die sich für PHP-Tutorials interessieren.

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