Nov 12
逆引きrhaco(?)13: htmlソースからpタグの内容を取り出す
rhacoの強力な機能のうちの1つSimpleTagを使用します(この機能でrhacoにはまりました)。
Rhaco::import('tag.model.SimpleTag');
$src = "<body><div><p>foo</p></div><div><p>bar</p></div></body>";
$tag = new SimpleTag();
$tag->set($src);
$p_tags = $tag->getIn('p');
foreach($p_tags as $p_tag){
echo $p_tag->getValue();
}
結果:
foobar
SimpleTagは非常に強力で、少々HTMLが崩れていても問題なく取得してくれますし、HTMLの一部でも扱ってくれます。ただし、ソース内の最初のタグから検索を始めるため
$src = "<div><p>foo</p></div><div><p>bar</p></div>";
の場合、結果は
foo
となり、上記のプログラムではbarを表示してくれません。