第一個問題在這裏!前置和追加到每個變量
我有一些PHP變量都以下面的形式出現在大約7/8個不同的文件中。
$this->do['string']
我希望讓他們都到以下幾點:
myfunction($this->do['string'])
我明白我必須使用正則表達式和獲取文件內容的功能,但我不能確定在哪裏何去何從!非常感謝,如果有人可以協助!
在此先感謝
第一個問題在這裏!前置和追加到每個變量
我有一些PHP變量都以下面的形式出現在大約7/8個不同的文件中。
$this->do['string']
我希望讓他們都到以下幾點:
myfunction($this->do['string'])
我明白我必須使用正則表達式和獲取文件內容的功能,但我不能確定在哪裏何去何從!非常感謝,如果有人可以協助!
在此先感謝
如何:
$result = preg_replace("/(\$this->do\['[^']+'\])/", "myfunction($1)", $inputstring);
編輯根據評論:
在你說你的輸入字符串是註釋:$inputstring = "\$this->do['fsdfs']";
(與$this
前一個反斜槓)。你必須再添加反斜線在正則表達式,也逃避它,所以整個指令就變成:
$result = preg_replace("/(\\\$this->do\['[^']+'\])/", "myfunction($1)", $inputstring);
// ^^^
太棒了!所以我假設我會得到文件內容,把它放在$ inputstring中,並在$ result中有我的新文件? – 2014-09-13 11:47:46
@Abitnew:是的,除非你有嵌套函數,否則它會工作。 – Toto 2014-09-13 11:56:41
唔,不怕我跟着,請你詳細說明一下嗎? – 2014-09-13 11:59:33
'查找和replace'? – 2014-09-13 11:38:45