Heim  >  Artikel  >  Backend-Entwicklung  >  PHP verwendet ob_start(), um die Ausgabe zu löschen und den Ausgabecode selektiv zu teilen

PHP verwendet ob_start(), um die Ausgabe zu löschen und den Ausgabecode selektiv zu teilen

php中世界最好的语言
php中世界最好的语言Original
2018-05-19 14:43:55921Durchsuche

Dieses Mal werde ich Ihnen die Codefreigabe von PHP mit ob_start() zum Löschen der Ausgabe und selektiven Ausgabe vorstellen. Welche Vorsichtsmaßnahmen gibt es für PHP, ob_start() zum Löschen der Ausgabe und selektiven Ausgabe zu verwenden? Das Folgende ist ein praktischer Fall. Schauen wir uns das an.

1. Hintergrund

Es gibt einen Code, der einige unnötige Rückgabewerte hat, weil er eine gekapselte Methode aufruft. Wie man mit diesen Rückgabewerten umgeht, um sie verschwinden zu lassen. Manche Leute werden sagen: Wäre es nicht besser, die Variablen zu löschen? Was aber, wenn dieser Rückgabewert nicht gelöscht werden kann?

2. ob_start()

1. Diese Funktion öffnet die Ausgabepuffer. Wenn die Ausgabepufferung aktiviert ist, gibt das Skript keine Inhalte aus (außer http-Headern), sondern die auszugebenden Inhalte werden in einem internen Puffer gespeichert. Der Inhalt des internen Puffers

kann mit der Funktion

ob_get_contents

() in eine Variable

String kopiert werden. Um die im internen Puffer gespeicherten Inhalte auszugeben, verwenden Sie die Funktion ob_end_flush(). Darüber hinaus wird durch die Verwendung der Funktion ob_end_clean() der Inhalt des Puffers stillschweigend verworfen. 2. Grundlegende Verwendung des Puffers

//打开缓冲区
ob_start();
//清除缓冲区中的内容
ob_clean();
//冲刷出(送出)输出缓冲区内容并关闭缓冲
ob_end_flush();
3. Grundlegende Tests

1 ,

echo '1';
ob_start();
echo '2';
ob_clean();

Ergebnis: 1

Erklärung: Dies ist die einfachste Verwendung, das heißt, fügen Sie ob_start(); an der Außenseite hinzu, wo Sie keinen Inhalt ausgeben möchten, und dann löschen Der Inhalt im Puffer realisiert somit unser Nutzungsszenario. Wir können selektiv ausgeben, was wir ausgeben möchten. Befreien Sie sich von dem, was Sie nicht ausgeben möchten.

2,

echo '1';
ob_start();
echo '2';
//输出缓冲区
ob_end_flush();

Ergebnis: 12

3,

//打开缓冲区
ob_start();
echo '1';
//清除缓冲区,此时不会输出1
ob_clean();
//输出缓冲区。但是因为上面已经清除过缓冲区了,所以不会输出 1
ob_end_flush();
echo '2';

Ergebnis: 2

4,

ob_start(); //打开缓冲区
echo '1'; 
$a = ob_get_contents(); //输出缓冲区内容到$a,相当于赋值给$a
ob_clean();   //这里清除缓冲区内容
echo '2';    //输出2
echo $a;    //输出$a

Ergebnis: 2 1

Erläuterung: Ob_get_contents(); dient dazu, den Inhalt des Puffers abzurufen. Wir können den erhaltenen Inhalt einer Variablen zuweisen, sodass wir auch dann, wenn der Puffer geleert wird und wir die Variable ausgeben, immer noch 1 normal ausgeben können.

4. Häufig verwendete Orte

Diese Funktion wird häufig zum Statiken von Seiten verwendet. Sie spielt eine Schlüsselrolle beim Aufbau eines Micro-Web-Frameworks. Die gerenderte Seite wird direkt über den Eingabecache in eine Datei geschrieben. Auf diese Weise kann beurteilt werden, ob die Datei vorhanden ist, um festzustellen, ob der Benutzer eine Seite während dieses Besuchs erneut rendern muss. Dies kann auch auf große Projekte angewendet werden und verwenden Sie nosql, um es zu speichern. Die spezifische Verwendung der gerenderten Seite variiert von Person zu Person, es hängt davon ab, welche Ihnen gefällt

Das Obige ist ein einfacher Test, den ich selbst durchgeführt habe. Bei Bedarf können Sie im PHP-Handbuch nachschlagen und weitere Tests durchführen.

Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website!

Empfohlene Lektüre:

Analyse der Redis-Betriebsschritte durch das CI-Framework (CodeIgniter)


php implementiert statistische binäre 1 Einzelperson im Detail Erläuterung der Schritte des mathematischen Algorithmus

Das obige ist der detaillierte Inhalt vonPHP verwendet ob_start(), um die Ausgabe zu löschen und den Ausgabecode selektiv zu teilen. 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