11

PHPmysql_*からmysqli_*

Sublime Text 2では、簡単に検索しmysql_て置き換えることができますmysqli_

私が遭遇する問題は次のとおりです。

mysql_query($query, $link_identifier)

mysqli_query($link, $query)

さらに悪いことに、$query は常にクエリ文字列の変数名であるとは限りません。私は持っているかもしれません:

$q_test = "SELECT `lName` FROM `users` ORDER BY `lName`";
$rstest = mysql_query($q_test, $DB) or die(mysql_error($DB));

$q_tester = "SELECT `address` FROM `users_address` ORDER BY `id`";
$rstester = mysql_query($q_tester, $DB) or die(mysql_error($DB));

同じぺージに。

上記の両方を次のように変更するために、Sublime Text 2 でマクロを作成する方法はありますか?

$rstest = mysqli_query($DBi, $q_test) or die(mysqli_error($DBi));
$rstester = mysqli_query($DBi, $q_tester) or die(mysqli_error($DBi));

同時に?これを達成するために正規表現を使用できると考えていますが、どのように、どこから始めればよいかわかりません。

アップデート

それで、少し探した後、検索できることがわかりました:

mysql_query\(\$(\w+), \$DB\)

と置き換えます

mysqli_query\(\$DBi\, \$$1)

変換する $rstest = mysql_query($q_test, $DB) or die(mysql_error($DB));

$rstest = mysqli_query($DBi, $q_test) or die(mysql_error($DB));私にとってはだけど…

検索と置換をマクロ化できないことがわかりました。オプションはありますか?

アップデート

したがって、プラグインReg Replaceを使用して、必要な設定をさらに行うことができます。

Reg Replace を使用すると、複数の検索および置換アクションを連鎖させてキーストロークにバインドできるため、基本的に一連の検索および置換アクションを実行して、必要なものを取得できます。

  1. 検索してmysql_置換mysqli_
  2. 検索して$DB置換$DBi
  3. 検索して, $DBi) or die(置換) or die(
  4. 検索してmysqli_query($置換mysqli_query($DBi, $

それらは基本的に得ます

$rstest = mysql_query($q_test, $DB) or die(mysql_error($DB));

に変換

$rstest = mysqli_query($DBi, $q_test) or die(mysqli_error($DBi));

私にとっては、1回のキーストロークで。最適ではありませんが、うまくいきます。ただし、プラグインのないシンプルなソリューションをまだ探しています。

更新上記は、更新されたReg Replaceプラグインを使用してSublime Text 3で動作します

4

1 に答える 1

8

sublimeには、マクロで正規表現を使用して検索と置換を記録する機能がないため、ここでは、Reg Replaceと一連の連鎖検索および置換コマンドを使用して、探しているものを取得します。

于 2012-10-18T11:46:16.693 に答える