私はこれで夢中になると思います...REGEXP:PHP変数の内容、つまり代入自体を取得します。具体的には、SQLクエリで変数を検索する
私は多くの組み合わせを試してみました。
file_get_contents()
で読み取った後、すべてのSQLクエリをPHPコードで検索する必要があります。もちろん
、すべてのこれらのクエリは次のように変数assignationsです:だからあなたが取るに多くの要因があることがわかります
$sql1 = "
SELECT *
FROM users u
WHERE u.name LIKE '%".$name."%' AND ... ;
";
または
$sql2 = "
SELECT *
FROM users u
WHERE u.id = ".$user_id;
または
$sql3 = '
SELECT *
FROM users u
ORDER BY u.surname1 DESC
'; //this query blablabla.......
PHP変数のアカウント。私はあまりにも正規表現パターンにSQLから特定の単語を見つけることを試みてきました
私は変数それはコンテンツだ取得と組み合わせて自分自身を得ることに基づいて近似して試してみたまず...
...
何でも...
私はそれを行う方法がわかりません。
逢引をグループ化し、それの後に、特別なSQLの単語を検索マッチをループ、すべての変数を取得し、それが逢引だ(それは私が今きたものだが、それが原因の逢引の正規表現の部分を動作しません) 。
正当な正規表現を使用してSQLクエリを直接検索しますか?
PHP変数(特に文字列)は、他の変数、二重引用符と一重引用符で囲まれた文字列と部分的に連結されています。途中で...
どうすればいいですか?これらの
//$regex_sql = '(["\'])(.*?)\2\s*;';
//$regex_sql = '(["\'])([^;]*?)\2\s*;';
//$regex_sql = '(?<!")\b\w+\b|(?<=")\b[^"]+';
//$regex_sql = '([^;]+)(?<=["\']);(?!["\'])';
//$regex_sql = '(.*?;)[^\\$]*';
なしが正常に動作しません:私は、私は別のフォームを試してみたの$ regex_sqlと連結
$regex_variable = '\\$([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)\s*[\+\-\*\/\%\.\&\|\^\<\>]*=\s*';
:
はこれまでのところ、それは私の変数正規表現の一部です。
お願いします。私はそれがすべての変数自体を取得している最良の近似であると確信しています。その後、SELECT、WHERE、UNION、ORDERのような特別なSQL単語を含むための割り当てをテストします...
あまり前もって感謝!
マーク。
編集:
はもちろん、クエリを持つ変数は、フォームのいずれかの種類を持っていることができることを追加します。上記は単純な例です。私たちは、そのようなことを話している
:
$s = 'insert into tabletest(a,b,c) values('asd','r32r32','fdfdf')';
または
$where = 'where a=2';
$sql="select distinct * from test ".$where;
または
$a = '
select *
from users
left outer join ...
inner join ...
left join ...
where ...
group by ...
having ...
order by ...
limit ...
...
';
または
...多くのプログラマーがコード内でクエリを作成し、自分のやり方でそれをやっている人を想像してください:\
私はそれらのすべてを手に入れました。少なくとも、結果を最大化してください...