0

2500 個のセッション変数を含む Web サイトが目の前にあり、そのほとんどは引用符なしでラベル付けされています (明らかに私の仕事ではありません....)。例えば

$_SESSION[var]

それよりも

$_SESSION['var']

ここで、2500 個すべてを変更して、引用符があることを確認する必要があります。すべてのファイルをループしてすべてのセッション変数をチェックするには、PHP を作成する必要があることはわかっています。おそらく preg_match を使用するでしょうが、必要な正規表現がわかりません。引用符のないものを見つけたら、誰かがより良い方法を考えられない限り、 str_replace にする必要がありますか?

知ってる人いる?これを手動で行うことはできません。死ぬ可能性があります。:) 乾杯

4

1 に答える 1

0

試す:

$yourCodeWhereYouNeedToReplace = file_get_contents('awfulCode.php'); //:P
preg_replace_callback('/_SESSION\[(\w+)\]/',
                      function ($matches)
                      { return '_SESSION[\''.$matches[1].'\']'; },
                      $yourCodeWhereYouNeedToReplace);

編集:すべてを\[(\w+)\]に置き換えたい場合は、パターンを使用することもできます。[key]['key']

于 2013-01-08T09:19:08.420 に答える