[PHP] ソースを整形して出力する参考
使い道
このサンプルではXML内にあるimg src属性とlink属性“だけ”を取得し、ベタなhtmlタグとしてインクルードするパターン
preg_match_all関数で取得したい値を正規表現『\”(.*)\”』でごっそりゲットし、変数に渡す。
(つまり必要な要素だけ、preg_match_allと対応する変数を列挙するばよい。)
ソース
取得するXML
┗ 置き場所の例:/var/www/○○○○/html/user_data/○○○○/packages/default/xml/img.xml
<?xml version="1.0" encoding="UTF-8"?> <data> <img src="○○1○○.jpg" link="http://○○1○○.jp/aaaa/" /> <img src="○○2○○.jpg" link="http://○○2○○.jp/bbbb/" /> <img src="○○3○○.jpg" link="http://○○3○○.jp/cccc/" /> <img src="○○4○○.jpg" link="http://○○4○○.jp/dddd/" /> <img src="○○5○○.gif" link="http://○○5○○.jp/eeee/" /> </data>
処理するPHP
$file = file_get_contents("/var/www/○○○○/html/user_data/○○○○/packages/default/xml/img.xml"); preg_match_all("<img src=\"(.*)\">", $file, $img, PREG_SET_ORDER); preg_match_all("< link=\"(.*)\" >", $file, $url, PREG_SET_ORDER); $cnt = 0; foreach ($img as $elm) { list($item, $dummy) = explode('" ', $elm[1]); list($urls, $dummy) = explode('" ', $url[$cnt][1]); echo "<a href=\"" . $urls . "\"><img src=\"" . $item . "\" /></a>\n"; $cnt++; }
処理出力されるHTML
<a href="http://○○1○○.jp/aaaa/"><img src="○○1○○.jpg" /></a> <a href="http://○○2○○.jp/bbbb/"><img src="○○2○○.jpg" /></a> <a href="http://○○3○○.jp/cccc/"><img src="○○3○○.jpg" /></a> <a href="http://○○4○○.jp/dddd/"><img src="○○4○○.jpg" /></a> <a href="http://○○5○○.jp/eeee/"><img src="○○5○○.gif" /></a>