我有一個棘手的問題,即在所有php文件中替換某個變量名,即將所有php文件中的_$foo_
重命名爲_$bar["foo"]_
。我打算將所有的php文件作爲文本讀取並替換所需的變量,然後將文件寫回爲文本。替換所有php文件中的變量
但難點是,我不能隨便更換$ foo的與$條[ 「富」]直接,情況是:
1)_echo "hello $foo";_
< - 需要爲更換:
_echo "hello ".$bar["foo"];_
或_echo "hello {$bar["foo"]}";_
2)_echo 'hello $foo';_
< - 無需更換任何
我可以想象會有很多複雜的情況來處理。想知道是否有任何現有的工具或庫可以安全地進行這種替換,或者任何人有更好的算法來處理?非常感謝。
http://stackoverflow.com/questions/19758/tools-for-php-code-refactoring可能會感興趣 –
其實我有一個語言文件數以萬計的變量需要重新命名。我手頭上有變量名的列表,並打算將變量傳遞給腳本,讓它遍歷變量列表並替換所有php文件。 – Joe
可能寫一個小的php腳本來做替換是唯一的方法,我可以通過幾種方式讀取每個php文件後想到的方法 1)通過變量名分割內容,然後分析每個元素以決定哪些變量在該頁面需要被替換,然後回寫新的php語句,通過語句從php文件中獲取聲明,並查看變量是否在引號內,並決定如何重命名該變量。 – Joe