PHPで書かれたソースコード内からMySQLのクエリを抽出したいと考えております。

あればすでにあるツールの紹介、なければ実現するのに必要な知識(字句解析?)を教えてください。

回答の条件
  • 1人2回まで
  • 13歳以上
  • 登録:
  • 終了:2011/02/25 01:30:06

回答2件)

id:hanako393 No.1

回答回数1142ベストアンサー獲得回数87

ポイント35pt

テキストファイルをSQLで使うような単語(SELECT、UPDATE,DELETE、INSET)でgrep掛ければ

それらしいのが出てくると思うのです・・。

id:y-kawaz No.2

回答回数1422ベストアンサー獲得回数226

ポイント35pt

一口にPHPと言ってもORマッパー等のDBフレームワークが使われていたりしたらSQLの抽出なんてほぼ不可能だし、そうでなくてもWHERE句をプログラムで組み立てるとかもよくあることで、ソースを見ないとそれが可能かどうかもわからないと思います。

またそういった事情なので「漠然とPHPのソースからSQLを抽出する」ツールというのは無いんじゃないかと思います。

一番確実なのはソースを読むことだと思います。


ただ別の切り口として、PHPのソースコードとは関係なしに、MySQL側でクエリログを取るという手があるかと思います。

設定方法は「MySQL クエリログ」でぐぐれば出てくるので見てみてください。

クエリログにはMySQLに対して発行されたSQLがどんどん記録されるので、問題のPHPに対して実際にブラウザで色々アクセスしてみるなどしてクエリを実行させてやれば発行されるクエリがひと通り取得できます。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません