我有以下$content
字符串。我也有title
和可选的icon
值。我想获取标题的所有值,但我想检查该标题是否有一个图标,然后我也想获取它。
我可以使用preg_match_all
. 但是我无法找出如何检查是否有图标并显示它。
我正在尝试以下代码:
$content = '[sc-item title="Item1 Title" icon="icon-bullet"] Lorem ipsum dolor sit amet[/sc-item][sc-item title="Item2 Title"] Lorem [/sc-item]';
$titles = array();
preg_match_all( '/sc-item title="(.*?)"/i', $content, $matches, PREG_OFFSET_CAPTURE );
preg_match_all( '/icon="(.*?)"/i', $content, $icon_matches, PREG_OFFSET_CAPTURE );
if( isset($matches[1]) ){
$titles = $matches[1];
}
if( isset($icon_matches[1]) ){
$icons = $icon_matches[1];
}
foreach( $titles as $title ){
echo $title[0];
//echo $icon[0];
}
在上面的示例中,第一个标题旁边有 和图标,而第二个标题没有。所以我只想得到第一个标题+图标和第二个标题。