PHP 7.2將未定義的常量錯誤從通知升級為警告,并建議將來它們將返回完整錯誤。我試圖找到一種通過腳本修復這些問題的方法,理想情況下是通過一個正則表達式,我可以運行該正則表達式來解析站點上的每個PHP文件,查找所有令人討厭的代碼并進行修復。我找到了多個示例來解決一個變種,但沒有一個解決另一個變種,這就是我正在尋求幫助的一個例子。這是一個示例文件:<?php$array[foo] = "bar"; // this should become // $array['foo'] = "bar"echo "hello, my name is $array[foo] and it's nice to meet you"; // would need to become // echo "hello, my name is " . $array['foo'] . " and it's nice to meet you";?>我已經看到了很多用于標識和更改第一種類型的選項,但是對于第二種類型則沒有,其中未定義的常量位于字符串中。在那種情況下,解析器將需要:替換$array[foo]為$array['foo']找到整個變量,事先用引號引起來,然后放一個。兩側,然后重新打開報價編輯:理想情況下,一個正則表達式將一次性處理示例代碼中的兩個示例-即添加刻度線,并且如果它標識在字符串內,則還添加引號/點。
- 2 回答
- 0 關注
- 131 瀏覽
添加回答
舉報
0/150
提交
取消