PHP

XPathで要素を取得するなど

$url = '[適当なURL]'; $dom = new DOMDocument(); $dom->loadHTMLFile($url); $xpath = new DOMXpath($dom); $links = $xpath->query('//a'); if (is_null($links)) { echo "no links in this page\n"; exit(); } foreach ($links as $link) { echo "linkto…

ob_関数 便利!!

PHP

最近はPHPのスクリプトも書けるようになってきた。 ob_start()とob_get_contents()及びob_end_clean()を使えば、PHPのようなHTMLが混在したソースの出力をファイルに出力できるようになる。便利すぎるwww※そんなことしなくてもリダイレクトしてファイルに落…

perlと違ってリファレンス渡しても、、、

PHP

perlは配列の配列を作るときには、配列リファレンスを使う。 @a = (0..1024*1024); $b = [\@a,\@a,\@a,\@a]; foreach my $c ($b){ print "OK\n"; } $cに入るのもリファレンスだから、使用する時には意識して使う必要がある。 PHPの場合、リファレンスであっ…

set_error_handler

PHP

PHPでエラー処理ってないのかなぁと思って検索したら出てきた関数。try catch系のように局地的にエラーを補足したり、エラーを投げれたりする感じではないのだけど、これを設定したら、今まで出てなかった警告がごっそり表示されたのでびびった。連想配列の…

標準出力を横取る

PHP

PHPがテンプレートに特化した言語だなぁと思っていたのだけれども、PHPで大きな開発をやるということになると、テンプレート内にロジックを書かない方が良くなってくる。もともとテンプレート用の言語だったのに、テンプレートを外側に出さないといけなくな…