WindowsとLinuxの両方でMySQLで実行した最後のクエリを取得するにはどうすればよいですか?
私はPHPおよびCodeIgniterを使用しています。my_model.php
には、次のものがあります。
$query1 = ( ...something... );
$query2 = ( ...something... );
$variables = ( .... something .... );
$this->db->query(" $query1 ... $variables .. $query2", array( $variables, ... ));
上記のコードスニペットの直後に実行される最後のクエリが必要です。
誰でも最後のクエリを取得する方法を教えてもらえますか?
使用する:
$this->db->last_query();
Returns the last query that was run (the query string, not the result). Example:
$str = $this->db->last_query();
// Produces: SELECT * FROM sometable....
クエリヘルパー関数 に関するマニュアルからの例
Config/database.phpで、config配列を設定する必要があります: 'save_queries' => TRUE、falseの場合、last_query()関数が機能しない。
CodeIgniterには、ヘルパー関数$this->db->last_query();
があります。
これは、最後のクエリの文字列を返します。
しかし、私はあなたが結果を得る方法を尋ねているかもしれないと思う、その場合はあなたがするだろう:
$query1 = ( ...something... );
$query2 = ( ...something... );
$variables = ( .... something .... );
$query = $this->db->query(" $query1 ... $variables .. $query2", array( $variables, ... ));
foreach ($query->result() as $row) {
//code goes here
}
詳細については、 CIの例 をご覧ください。