Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/usaken/tekmemo.com/public_html/php/wp-content/plugins/ultimate_ga_1.6.0.php on line 524

PEARはPHP5対応ではない

2007/02/17 | mojavi3

Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/usaken/tekmemo.com/public_html/php/wp-content/plugins/ultimate_ga_1.6.0.php on line 524

自分的には、mojaviのキーポイントは、如何に必要なPEARライブラリを使って効率よいプログラミングをするか、というところにある。
mojavi3は標準でデータベースを管理できるようになっているようだが、実際にコーディングする段階では、PEAR::DBやPEAR::MDB2を使うほうが何かと便利になるので別途組み込むことにした。
いざ組み込んでみると大量にエラーが吐かれる。どうもこれはPEARがまだ完全にPHP5に対応していないことに起因するようだ。MDB2でさえこの状態なのだから、他のパッケージならなおさらのことだろう。
完全な解決策ではないが、こんなふうにしてエラーを回避することにした。

ini_set(“display_errors”, 0);
ini_set(“error_reporting”, false);
require_once(‘MDB2.php’);
ini_restore(“error_reporting”);
ini_restore(“display_errors”);

美しくはないけれど、PEARライブラリをすべて自前で書き直すわけにはいかないので、これが精一杯だろう。ここまでやって、無事データベースに接続できることも確認できた。
まぁ、及第点といったところだろうか。

オートローダ

2007/02/16 | mojavi3

Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/usaken/tekmemo.com/public_html/php/wp-content/plugins/ultimate_ga_1.6.0.php on line 524

mojavi3(PHP5?)で採用されているオートローダ。ちょっと調べてみた。
プログラム中でクラスを使用する際に、あらかじめそのクラスがどのファイルに書かれているか設定しておいて、実際にそのクラスが呼び出されたら、自動的に設定ファイルから、必要なファイルを読み込むということのようだ。つまり、今まではたいていスクリプトの頭でrequire文を記述したけれど、これだと実際にクラスを使用しなくてもコンパイルしてしまうのでオーバーヘッドが大きい。ということで実際にクラスが呼ばれたら、勝手に元ファイルを読み込むということのようだ。
確かにプログラムが大きくなる傾向があるから、こういう処理は大切なのだとは思う。でも所詮PHPじゃん、そんなこと気にせずやりたい。だって大規模な開発はJavaでやればいいんだから。
PHPはJavaに近づこうとしているようにしか見えないけれど・・・。PHPって手軽に使える言語だからいいのに。
ま、使い方はわかった。あとはMDB2とQuickFormだな。

mojavi3とmdb2

2007/02/15 | mojavi3

Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/usaken/tekmemo.com/public_html/php/wp-content/plugins/ultimate_ga_1.6.0.php on line 524

mojavi3になってデータベースも標準で扱えるようになった。「すばらしい」と思ったのもつかの間、それを使おうとすると、また低級言語にもどらないといけない。つまりライブラリが使えないということで、直接mysql_queryなんて関数を使わないといけないようだ。んでちょっと調べて、行き当たったのがこちらのページ

対象はPEAR::DBだけど、これならMDB2に応用可能だろう。このサイトは諸々かなり詳しくmojavi3について書かれているので、mojavi2のことがある程度理解できていれば、ここを読みさえすれば習得するのは容易だと思う。しかも都合のいいことにQuickFormやSmartyの組み込み方もある。

来週クライアントとの打ち合わせがあるので、少しくらいmojavi3を使えるようにしておきたい。データベースが使えてQuickFormが大丈夫になれば、あとはいくつかライブラリをそろえれば何の問題もない。この数日が山だなぁ。

いまさらmojavi3

2007/02/14 | mojavi3

Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/usaken/tekmemo.com/public_html/php/wp-content/plugins/ultimate_ga_1.6.0.php on line 524

何を今更という気はしないでもないがmojavi3をやることになった。
第一の理由は、とある案件を受注できる可能性があり、その環境はPHP5であること(mojavi3はPHP5対応)。
第二の理由は、その案件の規模が比較的大きいこと。小さいものならあえてPHP5の案件は受けない(そしてまた、興味がある会社からの案件依頼ということもある)。
第三の理由は、他のフレームワークは使ったことがないこと。他にもフレームワークは数あれど、経験のあるフレームワークといえばmojaviだけ。もちろん他のフレームワークはフォーム生成等の諸々充実しているけれど、mojaviはそもそもフレームワークのためのフレームワーク。本当に好きなツールを組んで使うのがmojaviのやり方だから。
mojavi3(そしてPHP5)を始めるにあたっていろいろ気をつけないといけないらしい。オートロード機能とか・・・なんか諸々。とりあえず作業をするにあたって、メモを残していくことにした。乞うご期待?!。



Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/usaken/tekmemo.com/public_html/php/wp-content/plugins/ultimate_ga_1.6.0.php on line 524
守谷市(まちの情報ポータル) 無料アンケートレンタルjpForm.net

Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/usaken/tekmemo.com/public_html/php/wp-content/plugins/ultimate_ga_1.6.0.php on line 524