1
我需要解析一個自定義模板文件。PHP在多個自定義標籤之間獲取文本
可以說我的模板文件看起來像這樣。
@section('section1')
some content
@endsection
@section('section2')
some more content
@endsection
隨着解析我需要的結果如下的結果:
array(
'section1' => 'some content',
'section2' => 'some more content'
);
我試圖用這個代碼首先得到部分的名稱:
$sectionPattern = '/(?<=\@section\().*?(?=\))/';
preg_match_all($sectionPattern, $this->fileContents, $sections);
預期其工作。其結果是這樣的:
$sections = array(
array(
0 => 'section1',
1 => 'section2'
)
);
如果我試圖讓與此代碼的每一部分的內容:
foreach($sections[0] as $section) {
$contentPattern = '/(?<=\@section\(' . $section . '\)).*?([email protected])/';
preg_match_all($contentPattern, $this->fileContents, $content);
echo '<pre>';
print_r($content);
}
我只得到空數組,我不能找出原因。
此外,如果你有人看到一個更優雅的方式來獲得所需的結果。我很樂意提供建議。
在此先感謝。
令人難以置信!我仍然有很多需要正則表達式的東西。謝謝! – arkhon 2015-04-02 15:41:42