Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk mendapatkan tatasusunan tag php

Bagaimana untuk mendapatkan tatasusunan tag php

PHPz
Lepaskan: 2023-04-23 15:07:51
asal
445 orang telah melayarinya

Dalam PHP, anda boleh menggunakan tatasusunan untuk menyimpan dan memproses berbilang jenis data yang serupa. Kadangkala kita ingin mendapatkan tatasusunan yang mengandungi tag PHP, dalam artikel ini kita akan meneroka cara mendapatkan tatasusunan tag PHP.

  1. Menggunakan ungkapan biasa

Menggunakan ungkapan biasa ialah cara biasa untuk mendapatkan tatasusunan teg PHP. Tag PHP bermula dengan "". Anda boleh menggunakan ungkapan biasa untuk mencari semua teg PHP.

Berikut ialah contoh kod:

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

Kod ini akan membuka fail bernama "filename.php" dan menyimpan kandungannya sebagai rentetan dalam pembolehubah "$fileContent" . Seterusnya, gunakan ungkapan biasa "//s" untuk memadankan semua teg PHP. Akhirnya, tag PHP yang dipadankan disimpan dalam tatasusunan "$phpTagsArray".

  1. Menggunakan fungsi terbina dalam PHP

PHP menyediakan beberapa fungsi terbina dalam untuk memproses rentetan Anda boleh menggunakan fungsi ini untuk mendapatkan tatasusunan teg PHP. Salah satu fungsi ini ialah "explode()".

Berikut ialah contoh kod:

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

Kod ini mula-mula menggunakan fungsi "file_get_contents()" untuk membaca kandungan fail ke dalam rentetan "$fileContent". Seterusnya, gunakan fungsi "explode()" untuk memotong rentetan mengikut "

  1. Gunakan perpustakaan pihak ketiga

Selain menggunakan ungkapan biasa dan fungsi terbina dalam PHP, anda juga boleh menggunakan beberapa perpustakaan pihak ketiga untuk mendapatkan tatasusunan tag PHP . Sebagai contoh, anda boleh menggunakan perpustakaan "php-parser".

Berikut ialah kod sampel:

// 获取 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));
    }
}
Salin selepas log masuk

Kod ini mula-mula memuatkan perpustakaan "php-parser" dan kemudian menggunakan fungsi "ParserFactory()" untuk mencipta objek parser baharu. Fungsi "file_get_contents()" menyimpan kandungan fail yang dibaca dalam pembolehubah "$code". Seterusnya, kod tersebut dihuraikan menggunakan objek parser "$parser" dan hasilnya disimpan dalam pembolehubah "$ast". Akhir sekali, gelung melalui setiap nod PHP dan tukar nod menjadi rentetan yang boleh dicetak. Simpan keputusan dalam tatasusunan "$phpTagsArray".

Ringkasan:

Terdapat banyak cara untuk mendapatkan tatasusunan teg PHP, termasuk menggunakan ungkapan biasa, menggunakan fungsi terbina dalam PHP dan menggunakan perpustakaan pihak ketiga. Kaedah yang anda pilih bergantung pada tabiat pengaturcaraan dan keperluan projek anda. Tidak kira kaedah yang anda pilih, anda harus memilih kaedah yang paling sesuai dengan keperluan anda dan pastikan kod anda boleh mengendalikan semua situasi yang mungkin.

Atas ialah kandungan terperinci Bagaimana untuk mendapatkan tatasusunan tag php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan