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

medooのinsertはいただけない

2014/07/18 | medoo

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

さっそくmedooを試用しているが、いただけない箇所を見つけてしまった。

medoo自体はpdoのwrapperだから、データベース操作失敗時はfalseなりを返してくれればそれでいいのだが、どうやらそうではなかった。問題はinsertの場合。

試用中、insertで、未作成のカラム名を使用してデータを投入しようとしたら、その返り値が「0(文字列)」となった。これはダメだろ。

連番主キーがあり、insertに成功した場合、その返り値は最後に挿入された主キーとなる(ただし文字列として返却されるが)。連番主キーがない場合、もしくは主キーが連番でない場合、insertに成功するとその返り値は「0(文字列)」である。

つまり、成功時と失敗時で同じ返り値となることがあるということだ。error関数でエラーがセットされているかどうかを確認すればいいのだろうけど、使い勝手としてはよくない。medooのソースコードをみたけど、やはり返り値は何らかの数字文字列を返すようになっている。

medooをそのまま使いたいわけではなく、自作フレームワークに組み込みたかったので、さらにmedooのinsert関数を拡張し、insert失敗時はfalseを返すようにした。これで使い勝手は向上するはず。

その他のupdateとかdeleteとかは問題なさそう。さらに使ってみて、評価してみることにする。

コメントを残す



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