2007 | 03 | 04 | 05 | 06 | 08 | 09 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 12 |
2009 | 01 | 02 | 03 | 04 |
2010 | 01 | 06 |
2011 | 01 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 12 |
2009 | 01 | 02 | 03 | 04 |
2010 | 01 | 06 |
2011 | 01 |
2008-10-13
phpでDOMとか
コード参考 |
http://imagepick.yuyarin.net/http://favotter.matope.com/
yuyarin 23:37 <?php $uri = substr($_SERVER['REQUEST_URI'], 1); $src_document = new DOMDocument('1.0', 'UTF-8'); $src_document->loadHTMLFile($uri); $dst_document = new DOMDocument('1.0', 'UTF-8'); $dst_document->loadHTMLFile('./template.html'); $div = $dst_document->getElementById('contents'); $imgs = $src_document->getElementsByTagName('img'); for($i=0; $i<$imgs->length; $i++) { $div->appendChild($dst_document->importNode($imgs->item($i), true)); } echo $dst_document->saveHTML(); ?>
substr
new DOMDocument('1.0','UTF-8')
とりあえずDocumentオブジェクトを作るってことか
$src_document->loadHTMLFile($uri)
Documentオブジェクトに内容を入れる
.appendChild
>子要素群の最後に新しい子要素を追加する
.saveHTML
23:38 エラー処理とかはここでは省略 OK 23:40 ほむ yanbe 23:40 importNode初めて見た 23:40 ググって把握した 23:40 なるほど yuyarin 23:40 importNodeして新しいドキュメントに関連づけしないといけない 23:41 あと第二引数をtrueにしないと 23:41 attributeとか全部情報落ちる OK 23:42 うまいなー さかいかずあき(id:send) 23:42 サブツリーが入らないからか OK 23:42 流石 yanbe 23:43 importNode知らないとすげー面倒なことになるんだろうな 23:43 参考になりました OK 23:43 loadHTMLFileを使えばいいのか。 23:44 loadHTMLだといろいろと面倒な事になるのか? yuyarin 23:44 loadHTMLは文字列で 23:44 loadHTMLFileはファイルの場所なので 23:45 loadHTML(file_get_contents()) == loadHTMLFile yanbe 23:45 FileなのにURL直接渡してもいいんだ yuyarin 23:45 リモートファイルのオープンは設定に依ってできないことがある 23:46 importせずにappendChildすると、saveHTMLで"Wrong Document Error"とか出る
コメント