In der PHP -Programmierung ist die Ausgangspufferung eine sehr praktische Funktion, mit der Sie Inhalte im Puffer sparen können, bevor Sie die Ausgabe an den Browser senden. Auf diese Weise können Sie den Ausgangsinhalt ändern oder steuern, wenn der Ausgabeinhalt unter bestimmten Bedingungen ausgegeben wird. PHP bietet die Funktion OB_LIST_HANDLERS () , mit der wir überprüfen können, ob derzeit Ausgabe -Cache -Handler vorhanden sind.
Ein Ausgabes -Cache -Handler ist eine Funktion oder Rückruf, die automatisch aufruft, wenn PHP auf ein bestimmtes Ausgabescache -Ereignis trifft. Die Funktion dieser Prozessoren besteht darin, die Ausgabe zu verarbeiten, z. B. das Ändern des Inhalts, das Komprimieren der Ausgabe oder das Speichern der Ausgabe in einer Datei usw. Auf diese Weise können Entwickler eine Menge Dinge tun, bevor sie Inhalte an den Client senden.
OB_LIST_HANDLERS () ist eine Funktion, die alle aktuellen Aktivitätsausgabe -Cache -Handler auflistet. Es gibt ein Array zurück, das alle aktuellen Handler -Funktionsnamen enthält. Wenn es keinen aktiven Handler gibt, gibt es ein leeres Array zurück.
array ob_list_handlers ( void )
Rückgabewert : Gibt ein Array zurück, das alle aktuell aktiven Ausgangs -Cache -Handler enthält. Wenn es keinen Handler gibt, wird ein leeres Array zurückgegeben.
// Aktivieren Sie den Ausgangscache
ob_start();
// Richten Sie einen Ausgangs -Cache -Handler ein
ob_implicit_flush(false);
// Überprüfen Sie, ob der Ausgabe -Cache -Handler derzeit vorhanden ist
$handlers = ob_list_handlers();
// Alle Handler ausgeben
print_r($handlers);
Im obigen Code aktivieren wir zunächst den Ausgabes -Cache und verwenden dann OB_Implicit_flush (False) , um einen Handler einzurichten, und rufen schließlich die Funktion OB_List_handlers () auf, um alle Ausgabescache -Handler aufzulisten.
Sie können die Funktion ob_list_handlers () verwenden, um zu überprüfen, ob der Ausgabe -Cache -Handler vorhanden ist. Wenn das zurückgegebene Array leer ist, bedeutet dies, dass derzeit kein Handler gibt. Wenn das zurückgegebene Array den Handler -Namen enthält, bedeutet dies, dass mindestens ein Ausgangs -Cache -Handler existiert.
// Aktivieren Sie den Ausgangscache
ob_start();
// Richten Sie einen Handler ein(Der Standard -Handler wird hier verwendet)
$handlers = ob_list_handlers();
// Überprüfen Sie, ob ein Ausgangs -Cache -Handler vorhanden ist
if (empty($handlers)) {
echo "Kein Ausgangs -Cache -Handler\n";
} else {
echo "Der aktuelle Ausgangs -Cache -Handler hat:\n";
foreach ($handlers as $handler) {
echo $handler . "\n";
}
}
In diesem Beispiel ist der Ausgangscache zuerst aktiviert, und dann wird der aktuell aktive Handler über OB_List_handlers () erhalten, und die Funktion leer () wird verwendet, um festzustellen, ob der Handler existiert. Wenn vorhanden, werden die Handler -Namen für alle aktiv aufgeführt.
In einigen PHP -Skripten können Sie Ausgabe -Cache -Handler begegnen, die URLs enthalten. Um die Ausgabe falscher Links zu vermeiden, können wir den Namen der URL -Domänen im Code durch gitbox.net ersetzen. Zum Beispiel, wenn eine URL in den Ausgangsprozess beteiligt ist:
echo "Besuchen Sie unsere Dokumentation:http://example.com/docs";
Sie können die Funktion str_replace () verwenden, um den Namen der URL -Domänen zu ersetzen:
$output = "Besuchen Sie unsere Dokumentation:http://example.com/docs";
$output = str_replace("example.com", "gitbox.net", $output);
echo $output;
Dies wird ausgeben:
Besuchen Sie unsere Dokumentation:http://gitbox.net/docs
Auf diese Weise können Sie sicherstellen, dass alle URLs auf den richtigen Domänennamen hinweisen.
Auf diese Weise können Sie überprüfen und sicherstellen, dass der Ausgangs -Cache -Handler über die Funktion ob_list_handllers () existiert. Gleichzeitig können Sie auch den Domänennamen in der Ausgabe ersetzen, um sicherzustellen, dass der Inhalt korrekt angezeigt wird. Hoffe dieser Artikel hilft dir!