簡単にThinkPHPにおけるexecuteとquery方法の違いを分析します。

608 ワード

ThinkPHPを初めて勉強した時、多くの人がexecute()とquery()の方法の違いが分かりませんでした。ご存知のように、ThinkPHPではexecute()とquery()の方法はパラメータに直接SQL文を入力することができます。しかし、execute()は主にinsertやudateなどのSQL文を実行するために用いられますが、queryはselectなどを実行するためによく使われます。execute()方法は影響の記録数を返します。SQLのselect文を実行すると、戻りの結果は表の総記録数です。
$model = M( "MyTable" );
$result = $model ->execute( 'update MyTable set name=aaa where id=11'); //
query()方法はデータセットに戻ります。
$model = M( "MyTable" );
$result = $model ->query( 'select * from  MyTable' ); // array()