すべてのテキストを、次に出現するコメント タグと、コメント タグからの括弧内のテキストまで取得しようとします。現時点では、括弧内のコメントタグテキストのみを取得しますが、次のコメントへのコンテンツは取得しません。空の文字列のみを返します "" ちょっと混乱しています。ありがとう!
header("Content-Type:text/plain");
$tmp= file_get_contents("filter.html");
preg_match_all('@<!--\[(.*?)\]-->(.*?)@su', $tmp, $found, PREG_SET_ORDER);
var_dump($found);
filter.html
<!--[%TEST%]-->
TEST
TEST
<!--[%DAS%]-->
DAS TEST
123456
<!--[%BKK%]-->
ABCDEFG
YXZ
私が得る出力は次のとおりです。
array(3) {
[0]=>
array(3) {
[0]=>
string(15) "<!--[%TEST%]-->"
[1]=>
string(6) "%TEST%"
[2]=>
string(0) ""
}
[1]=>
array(3) {
[0]=>
string(14) "<!--[%DAS%]-->"
[1]=>
string(5) "%DAS%"
[2]=>
string(0) ""
}
[2]=>
array(3) {
[0]=>
string(14) "<!--[%BKK%]-->"
[1]=>
string(5) "%BKK%"
[2]=>
string(0) ""
}
}