いい機能には書く本能があるそうです。教科書に書いてありました。
*このエントリは、ブログペットのココロが書いてます♪
2010年2月13日土曜日
2010年2月6日土曜日
2010年2月3日水曜日
PHPでURL短縮関数
モバイルギアIIにインストールしたNetBSD/hpcmips、Apacheは動作しないままですが、PHPは動作してます。
・・・が、相変わらず一部の関数がダメ(-_-;
今のところ、直接的に困っているのが、pearのServices_ShortURLが使えないこと。
ということで、特別なモジュールも関数も使わずにBit.lyのAPIを呼び出してURLを短縮する関数を書いてみました。
file_get_contents関数で取得しても問題ないよね?(^-^;
Bit.lyのAPIは標準ではJSON形式でデータを返してくるのですが、どうもこれがエラーになってしまうので、XMLでデータを受信し、simpleXML関数で結果を取得しています。
というわけで、さくらのレンタルサーバーで運用していたBOTの機能の一部をモバイルギアIIに移行しました。今のところちゃんと動いてます♪
・・・が、相変わらず一部の関数がダメ(-_-;
今のところ、直接的に困っているのが、pearのServices_ShortURLが使えないこと。
ということで、特別なモジュールも関数も使わずにBit.lyのAPIを呼び出してURLを短縮する関数を書いてみました。
function shortURL($id, $key, $url){
$bitlyUrl = 'http://api.bit.ly/shorten?version=2.0.1&format=xml&login=' . $id . '&apiKey=' . $key . '&longUrl=' . $url;
$bitlyXml=file_get_contents($bitlyUrl);
$xmlArr = simplexml_load_string($bitlyXml);
if($xmlArr->errorCode=="0"){
return $surl=$xmlArr->results->nodeKeyVal->shortUrl;
}else return false;
}
file_get_contents関数で取得しても問題ないよね?(^-^;
Bit.lyのAPIは標準ではJSON形式でデータを返してくるのですが、どうもこれがエラーになってしまうので、XMLでデータを受信し、simpleXML関数で結果を取得しています。
というわけで、さくらのレンタルサーバーで運用していたBOTの機能の一部をモバイルギアIIに移行しました。今のところちゃんと動いてます♪
PHP 逆引きレシピ (PROGRAMMER’S RECiPE)
翔泳社
鈴木 憲治
ユーザレビュー:
これがあるとある程度 ...
情報量と使いやすさの ...
知りたい事が網羅され ...

Amazonアソシエイト by

翔泳社
鈴木 憲治
ユーザレビュー:
Amazonアソシエイト by
PHPによるWebアプリケーションスーパーサンプル 第2版
ソフトバンククリエイティブ
西沢 直木
ユーザレビュー:
リファレンスとして入 ...
第二段階に読むべき本 ...
内容自体は良いが、構 ...

Amazonアソシエイト by

ソフトバンククリエイティブ
西沢 直木
ユーザレビュー:
Amazonアソシエイト by
実践マスターPHP+MySQL―PHP4/PHP5対応
ソーテック社
小島 まさご
ユーザレビュー:
読みやすいです初級? ...
いい意味でも悪い意味 ...
失敗しにくい入門書私 ...

Amazonアソシエイト by

ソーテック社
小島 まさご
ユーザレビュー:
Amazonアソシエイト by
2010年1月29日金曜日
2010年1月25日月曜日
NetBSD/hpcmipsでPHP
モバイルギアIIにインストールしたNetBSD/hpcmips、Apacheが1.3系も2.x系も動作しなくて悩んでいたんだけど、Webサーバーとデータの送受信をするだけならPHPが動作するだけで十分なんで、Webサーバー化は中断してPHPの実行環境を構築してます。
ftp://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD-4.0/hpcmips/All
↑
ここからバイナリパッケージをダウンロードしても良いんだけど、どれをインストールするのか良くわからなかったり、バイナリパッケージがなかったりするので、
ftp://ftp.netbsd.org/pub/pkgsrc/pkgsrc-2009Q3/
↑
ここからアーカイブをダウンロードして展開して(それだけでスゴーく時間がかかる^^;)、
※ make install で良いんだけど、バイナリパッケージも作っておきたいので。
で、Webサイトとのデータ送受信をするので、pearのHTTP_Request2なんかを要求されるので、
twitterにメッセージを投稿するのにServices_Twitterなんてのもあるんですねー。
今回はベースになるスクリプトが自作じゃないので使わないけれど、覚えておこう。
で、一通り環境が出来たので、PHPのスクリプトを実行してみたら、なにやらエラーが・・・?
さくらのレンタルサーバー上では問題なく動くスクリプトなのでなんでかなと思って、エラーメッセージを読んだら、cURLというライブラリが足りないらしい。
これは、pearじゃなくて、NetBSDのpkgsrcから
・・・したけど、curl extensionが使えないorz
うーん、なんでだ?
ついでにmbstringも使えないと思ったら、コンパイル時のオプションで指定しないとダメらしい。
こっちは、Makefile.phpに
でもって、コンパイル中にメモリ不足でエラーにになったので、こっちは
一時はdistccの分散コンパイルも考えたけれど、とりあえず時間がかかってもコンパイルできるならOK。
る必要があるんですね。
・・・なんだか年末からずっとコンパイルしているよorz
それにしても、プアな環境で延々とコンパイルしていても固まらないモバイルギアIIは偉い(^ヮ^)
ftp://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD-4.0/hpcmips/All
↑
ここからバイナリパッケージをダウンロードしても良いんだけど、どれをインストールするのか良くわからなかったり、バイナリパッケージがなかったりするので、
ftp://ftp.netbsd.org/pub/pkgsrc/pkgsrc-2009Q3/
↑
ここからアーカイブをダウンロードして展開して(それだけでスゴーく時間がかかる^^;)、
# cd lang/php5/とか、
# cd lang/pear/とかして、
# make packageしました。
※ make install で良いんだけど、バイナリパッケージも作っておきたいので。
で、Webサイトとのデータ送受信をするので、pearのHTTP_Request2なんかを要求されるので、
# pear install HTTP_Request2その他、Services_ShortURLもインストール。
twitterにメッセージを投稿するのにServices_Twitterなんてのもあるんですねー。
今回はベースになるスクリプトが自作じゃないので使わないけれど、覚えておこう。
で、一通り環境が出来たので、PHPのスクリプトを実行してみたら、なにやらエラーが・・・?
さくらのレンタルサーバー上では問題なく動くスクリプトなのでなんでかなと思って、エラーメッセージを読んだら、cURLというライブラリが足りないらしい。
これは、pearじゃなくて、NetBSDのpkgsrcから
# cd www/curl/とやってインストール
# make package
・・・したけど、curl extensionが使えないorz
# pear install Net_Curlでもダメorz
うーん、なんでだ?
ついでにmbstringも使えないと思ったら、コンパイル時のオプションで指定しないとダメらしい。
こっちは、Makefile.phpに
PKG_DEFAULT_OPTIONS+= mbstringと追記して再度コンパイルしたら解決。
でもって、コンパイル中にメモリ不足でエラーにになったので、こっちは
# dd if=/dev/zero bs=1m count=256 of=/swapfileとやったら解決。
# swapctl -a /swapfile
一時はdistccの分散コンパイルも考えたけれど、とりあえず時間がかかってもコンパイルできるならOK。
る必要があるんですね。
・・・なんだか年末からずっとコンパイルしているよorz
それにしても、プアな環境で延々とコンパイルしていても固まらないモバイルギアIIは偉い(^ヮ^)
登録:
投稿 (Atom)