PHPカンファレンス2008、ただのメモ

諸事情で行けなくなったので、ustから見させて頂きました。 PHPカンファレンス2008 - プログラム概要 rhacoの動画のみ抜粋 いよいよPHPの人にrhacoを紹介しちゃいますよ - 露木誠 nico ust rhacoでモテる 懇親会LT id:riaf rhaco以外も含む動画 phpcon, Ustr…

rhacoの中の人のライバルは○ょこたんに違いない。

すごい更新する。 のは分かってるんですが、実際にどのくらいなのか調べてみました。 月単位で調べてみます。 ちょw 去年の8月に240回とかw 日単位で調べてみると・・・ rhacoがsourceforgeにアップされてから今日まで603日経過してます。 そのうち更新し…

実践まるごとrhaco勉強会 に行ってきました。

実践まるごとrhaco勉強会 - events.php.gr.jp 行ってきました。主催の@riafさん、@rhacoさん、会場提供頂いた@cocoitibanさん ありがとうございました勉強会とか初参加だったのですが、楽しめました。 思ったこととか、メモしておきます。 rhacoが良いなぁ。…

rhacoのログにdBugを埋め込めるようにしてみた。

昨日書いたログをFirebugのコンソールへ出力してみる。 - gounx2の日記ですが、実際にデバッグに使うことを考えるといまいちな感じなので、本当のところなにがやりたいのか要点をまとめてみます。 rhacoのログ表示でオブジェクトが表示されるときに、ダラー…

ログをFirebugのコンソールへ出力してみる。

これは何? 次のようなスクリプトを書いたときに・・・

Loggerで自己参照してる変数を出力するとエラーになる。

どんな現象か? 自己参照してる変数をログ出力すると以下エラーになる。 Fatal error:Nesting level too deep - recursive dependency? in ... $a = new stdClass(); $a->a = $a; var_dump($a); //var_export($a); Logger:info($a); 原因は? var_exportで落…

LingrAPI でいくつかバグ修正+α

setCounter:(observer経由でCallされたとき)カウンタがリセットされることがあるので修正 getRoomInfo:(パラメータにapikeyが無い為)動かないのを修正 observer:メッセージを返すことを想定していないので修正 setCounterDirect:追加(必要になったので…

別プロセスで動くの?

php

こんなのを作って・・・ "; flush(); set_time_limit(0); $cnt = 10; while($cnt -- > 0){ echo "".date("H:i:s")." 00<br/>\n"; flush(); sleep(1); } Windows、PHP5.2.2 の場合 0.ブラウザAからphpにアクセス、すぐにブラウザBもアクセス。 1.ブラウザA:1s毎</br/>…

Rhaco.php、error_reportingの設定が逆のような。

rhaco/Rhaco.php(rev3269/3272)

ob_start、register_shutdown_function あたり挙動がPHP4、PHP5で異なる。

php

rhacoのSnapshotのバグを調査してて、PHP4とPHP5での動きの違いがあったので、純粋なPHPのみで検証してみた。 結論その1 ob_startした後、Fatal error を意図的に発生させています。Fatal error が発生すると、shutdown関数がCallされて、その中でob_get_co…

PHP公式マニュアル用のie,firefox,googleツールバー検索plugin

php

なんか、そういうのありそうですが、見つけられなかったので http://ready.to/ のサービスを利用させてもらいました。http://ready.to/search/jp/?sna=PHP&prf=http%3A%2F%2Fjp2.php.net%2Fresults.php%3Fq%3D&suf=%26amp%3Bl%3Dja%26amp%3Bp%3D&in=utf&ou=o…

キャッシュありでテンプレートで発生したFatalが表示されないバグ

どんな問題か? setup.phpから以下設定しておく。 キャッシュあり。 更新周期0s test.php write(); ?> test.html <html> <head> </head> <body> \n"; // Strict Standards //function …</body></html>

network.mail.Mail->send バグ(か微妙?)

どんなバグか? Subjectを空文字列で、とある携帯にメール送信すると、Subjectに "=?ISO-2022-JP?B??=" が表示される。 一見「携帯のバグじゃん。ちゃんとMIMEデコードしろよな。」と思ったのですが、一概にそうとも言い切れない感触。 to($to); $mail->subj…

network.mail.Mail->send バグ

どんなバグか? Linux PHP5.2.0 rhaco の Mailクラスでメール送信したとき、本文(message)の1行目が空行になる。 to($to); $mail->subject($subject); $mail->message($message); $mail->send(); ?> これで送信すると、1行目が必ず空行になります。 原因 P…

network.http.Http->request バグ(その2)

昨日書いた network.http.Http->request バグ - gounx2の日記 が間違っていたので書き直します。 どんなバグか? 次のスクリプトを実行すると。。。

network.http.Http->request バグ

2008-6-28追記 この記事ミスってましたorz 書き直したのはこちら Browser->get() 取得したコンテンツのマルチバイトが部分的に化けるので、Transfer-Encoding: chunked の処理を直してみた。rhaco/network/http/Http.php(rev3184/3235) class Http{ /** * リ…

PHPでさくっとスクレイピングしたい。SimpleScrape

これは、 SimpleXmlとSimpleTag比較:twitterのhomeをスクレイピングしてみた。 - gounx2の日記 SimpleTag と SimpleXML->xpath の比較 (rev3115) - gounx2の日記 でやったことのまとめ的なものです。では、本題です。 これは何か? コンテンツを http get …

SimpleXmlとSimpleTag比較:twitterのhomeをスクレイピングしてみた。

事例としては、 <div id="content">なタグを抽出とか <div class="hentry">なタグを全部抽出について比較します。id は1つ、class は 複数 という違いがあるので、そのあたりも真面目に考えてみました。 なお、class 抽出のxpath式については CSSのセレクタをXPathに変換する 2007-02-05 - nazonoD</div></div>…

StringUtil::detectEncodingの実装について

EUCで文字化け? - gounx2の日記 http://d.hatena.ne.jp/gounx2/20080621/1214059256これの続きです。個人的には mb_detect_encoding は文字列が短いと当てにならないので、普段使わないんですよね。 本来、fromエンコードが何なのかは作り手が意識すべきも…

EUCで文字化け?

EUC で文字化けしたのを検証してみようと思ったけど - TECHNOLAZY.LOG http://d.hatena.ne.jp/technolize/20080621/1214048670気になったのでちょっと調べてみました。 マルチバイト周りは StringUtil にまとめられてて、処理元の文字列のエンコードはdetect…

Zend_Mail_Part で メール解析 する。

Zend_Mailを使った送信のサンプルはたくさんあったのだけど、逆のデコードについては情報がありませんでした。 デコードと言えば、PEARのMail_mimeDecodeが有名なので、みなさんそちらに走ってるのかなぁ。 あえて逆らって、Zend Frameworkで方法を探ってみ…

参照とか、PHP5のオブジェクトとか復習

php

自分が理解してるか図式してみた。 | View | Upload your own参考オブジェクトの参照渡しと値渡しについて - GRANADA Hatena @ sotarok http://d.hatena.ne.jp/sotarok/20080603/1212599778【PHPウォッチ】第2回 次々期バージョンPHP6はエンジンをPerlと共通…

デザインを・・・

カエルにしてみましたw

SimpleTag と SimpleXML->xpath の比較 (rev3115)

rhacoのSimpleTagとPHP5のSimpleXMLのxpathをちょっと比較。今回はSimpleTag で、「center の子の div」 をさくっと書く方法が分かりませんでした。 もしかしたら見落としてるのかも・・・ <div id="aaa1"></div>

Rhaco::constant() (rev3034/3045)

tag.TagParser->read()を読んでて。 if(!Variable::bool(Rhaco::constant("NOT_MAKE_CACHE")) && Variable::bool(Rhaco::constant("TEMPLATE_CACHE")) && !Cache::isExpiry($cacheurl,Rhaco::constant("TEMPLATE_CACHE_TIME",86400)) && (FileUtil::time($fi…

tag.TagParser->read() (rev3038/3045)

現在、テンプレートでエラー発生すると、 C:\xampp\htdocs\pdt\rhaco\Rhaco.php(275) : eval()'d code(147)のようになって、何がエラーになったのか解明できない。setup.phpから、キャッシュありにすれば、/work/cache にキャッシュファイルが 作られるので…

util.Logger->format() (rev3035/3045)

Logger::info(Rhaco::constant('FEED_URL')); とかすると、 [info 2008/05/18 00:18:12]:[C:\xampp\htdocs\rhaco-sample01\index.php:12] NULLと表示される。 rhacoではファイル名、行番号どのように取ってるのか調べてみた。このフォーマットしてるところ /…

週末rhacoの成果

上の2つは、DBのextraとか、Viewsの話。 3つめは、デバッグに関する話。テーブルHogeに仮想カラムを追加する方法 - rhacoに関するメモ追加した仮想カラムをViews->read()で表示させる方法 - rhacoに関するメモdBug.phpをrhaco用に改造 - rhacoに関するメモ

"日本語"という文字列を各エンコードでほげほげ

PHP

文字化けしたときに、環境に依存しない方法で何とかするときとか。 \n"; echo "EUC-JP:" . pack("H*","c6fccbdcb8ec") . "<br />\n"; echo "SJIS:" . pack("H*","93fa967b8cea") . "<br />\n"; echo…

PDT1.0.0と1.0.2の違い

PHP

pleiadesのサイトで一括パッケージを見つけたのでインストールしたのだが、 1.0.2は「このサーバーへプロジェクトを公開」がなくなっていたので悩んだ。 FileSyncプラグインで代用できた。Javaとかpleiadesの設定とかそういうの一切気にせず、 zipを解凍する…