Heim >Backend-Entwicklung >PHP-Problem >So erhalten Sie ein PHP-Tag-Array

So erhalten Sie ein PHP-Tag-Array

PHPz
PHPzOriginal
2023-04-23 10:09:51429Durchsuche

In PHP können Sie Arrays verwenden, um mehrere ähnliche Datentypen zu speichern und zu verarbeiten. Manchmal möchten wir ein Array mit PHP-Tags erhalten. In diesem Artikel erfahren Sie, wie Sie ein Array mit PHP-Tags erhalten.

  1. Reguläre Ausdrücke verwenden

Die Verwendung regulärer Ausdrücke ist eine gängige Methode, um ein Array von PHP-Tags abzurufen. PHP-Tags beginnen mit „“. Sie können reguläre Ausdrücke verwenden, um alle PHP-Tags zu finden.

Hier ist der Beispielcode:

// 获取 PHP 标签
$fileContent = file_get_contents('filename.php');
preg_match_all("/<\?php(.*?)\?>/s", $fileContent, $matches);
$phpTagsArray = $matches[0];

Dieser Code öffnet eine Datei mit dem Namen „filename.php“ und speichert ihren Inhalt als String in der Variablen „$fileContent“. Als nächstes verwenden Sie den regulären Ausdruck „//s“, um alle PHP-Tags abzugleichen. Abschließend werden die passenden PHP-Tags im Array „$phpTagsArray“ gespeichert.

  1. Verwenden der integrierten PHP-Funktionen

PHP bietet einige integrierte Funktionen zum Verarbeiten von Zeichenfolgen, und Sie können diese Funktionen verwenden, um das PHP-Tag-Array abzurufen. Eine dieser Funktionen ist „explode()“.

Das Folgende ist der Beispielcode:

// 获取 PHP 标签
$fileContent = file_get_contents('filename.php');
$phpTagsArray = explode('<?php&#39;, $fileContent);
array_shift($phpTagsArray);
foreach($phpTagsArray as &$phpTag){
    $phpTag = "<?php".$phpTag;
}

Dieser Code verwendet zunächst die Funktion „file_get_contents()“, um den Inhalt der Datei in die Zeichenfolge „$fileContent“ einzulesen. Als nächstes verwenden Sie die Funktion „explode()“, um die Zeichenfolge gemäß „

  1. Verwenden Sie Bibliotheken von Drittanbietern

Zusätzlich zur Verwendung regulärer Ausdrücke und integrierter PHP-Funktionen können Sie auch einige Bibliotheken von Drittanbietern verwenden, um PHP-Tag-Arrays abzurufen. Sie können beispielsweise die Bibliothek „php-parser“ verwenden.

Hier ist der Beispielcode:

// 获取 PHP 标签
require &#39;vendor/autoload.php&#39;;
use PhpParser\ParserFactory;
$parser = (new ParserFactory)->create(ParserFactory::PREFER_PHP7);
$code = file_get_contents('filename.php');
$ast = $parser->parse($code);
$printer = new PhpParser\PrettyPrinter\Standard();
$phpTagsArray = array();
foreach ($ast as $node) {
    if($node instanceof PhpParser\Node\Stmt\InlineHTML){
        $phpTagsArray[] = $printer->prettyPrint(array($node));
    }
}

Dieser Code lädt zuerst die „php-parser“-Bibliothek und erstellt dann ein neues Parser-Objekt mit der Funktion „ParserFactory()“. Die Funktion „file_get_contents()“ speichert den Inhalt der gelesenen Datei in der Variablen „$code“. Als nächstes wird der Code mit dem Parser-Objekt „$parser“ geparst und das Ergebnis in der Variablen „$ast“ gespeichert. Führen Sie abschließend eine Schleife durch jeden PHP-Knoten durch und konvertieren Sie den Knoten in eine druckbare Zeichenfolge. Speichern Sie die Ergebnisse im Array „$phpTagsArray“.

Zusammenfassung:

Es gibt viele Möglichkeiten, das PHP-Tag-Array abzurufen, einschließlich der Verwendung regulärer Ausdrücke, der Verwendung integrierter PHP-Funktionen und der Verwendung von Bibliotheken von Drittanbietern. Welche Methode Sie wählen, hängt von Ihren Programmiergewohnheiten und Projektanforderungen ab. Unabhängig davon, für welche Methode Sie sich entscheiden, sollten Sie die Methode auswählen, die Ihren Anforderungen am besten entspricht, und sicherstellen, dass Ihr Code alle möglichen Situationen bewältigen kann.

Das obige ist der detaillierte Inhalt vonSo erhalten Sie ein PHP-Tag-Array. 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