PHP5
コードをあーだこーだと書き換える遊びがはやっているっぽい。
それ Rails Ruby でもできるよ
ウェブアプリ周りは群雄割拠だしさぁなるほど。
試しにPHP5でやってみた。
<?php
mb_internal_encoding('UTF-8');
define('APPURL', 'http://api.search.yahoo.co.jp/WebSearchService/V1/webSearch' );
define('MYAPPID', 'YahooDemo' );
define('MAX_RESULTS', 10 );
$result=array();
$hits=0;
$query=$_GET['query'];
if($query!=''){
$arr=array('appid'=>MYAPPID,'results'=>MAX_RESULTS,'query'=>$query);
$url = APPURL.'?'.http_build_query($arr);
$xml = simplexml_load_file($url);
if($xml!==FALSE){
$hits=$xml['totalResultsAvailable'];
$result=$xml->Result;
}
}
?>
<html>
<body>
<form>
<input type="text" name="query" value="" />
<input type="submit" />
</form>
<?= $hits ?><br />
<ol>
<?php foreach($result as $item) { ?>
<li><a href="<?= $item->ClickUrl ?>"><?= $item->Title ?></a></li>
<?php } ?>
</ol>
</body></html>
mb_internal_encoding('UTF-8');
define('APPURL', 'http://api.search.yahoo.co.jp/WebSearchService/V1/webSearch' );
define('MYAPPID', 'YahooDemo' );
define('MAX_RESULTS', 10 );
$result=array();
$hits=0;
$query=$_GET['query'];
if($query!=''){
$arr=array('appid'=>MYAPPID,'results'=>MAX_RESULTS,'query'=>$query);
$url = APPURL.'?'.http_build_query($arr);
$xml = simplexml_load_file($url);
if($xml!==FALSE){
$hits=$xml['totalResultsAvailable'];
$result=$xml->Result;
}
}
?>
<html>
<body>
<form>
<input type="text" name="query" value="" />
<input type="submit" />
</form>
<?= $hits ?><br />
<ol>
<?php foreach($result as $item) { ?>
<li><a href="<?= $item->ClickUrl ?>"><?= $item->Title ?></a></li>
<?php } ?>
</ol>
</body></html>
- PHP4でやりたかったけど、XML関連が弱いので、SimpleXMLが使えるPHP5(APIとかPEARにもあるにはあるのだが、SimpleXML程簡素なのはない気がする)。
- http_build_queryは初めて使ってみた(PHP5から)。ってか使わないほうがタイトになったのかも。
- hightlight_fileは便利。ただIEだとなんかよく見えないので<code>タグは外した。
- PHPスクリプトとHTMLコードを同居させるのは…まぁいいかこの際。
- 関数化してもよかった。にしても、PerlやRubyほどタイトには書けない気がする。読みやすいとは思うけど。だからこそJavaの代替物として業務系で扱われているのか。
ってか、レベル3のヘッポコPGなので、こんなものです。