2025年7月13日 星期日

如何使用notepad++的正規表示法取代舊版的php語法

因為 PHP 8.2 起已正式棄用未加引號的字串索引,所以之前不好的寫法會造成在新版出現錯誤,想說要改版就把之前不好的寫法都改掉,以免之後的版本不支援又要再改一次。

記得要點選【規則運算式】才會有作用



1.將未加引號的字串索引補上

$UserName=$_GET[name];
改成
$UserName=$_GET["name"];

指令
\[(?!\$)([a-zA-Z_][a-zA-Z0-9_]*)\]

["\1"]
請換成.
(\$_(GET|POST|REQUEST|SESSION|COOKIE|FILES|ENV|SERVER))\[([a-zA-Z_][a-zA-Z0-9_]*)\]

$1['$3']



2.將使用簡短的 PHP 標籤顯示改成正常用法

<?="hello"?>
改成
<?php echo "hello"?>

指令

<\?=([\s\S]*?)\?>

<?php echo \1?>



3.將使用簡短的 PHP 標籤(不含顯示)改成正常用法


<?{?>
改成
<?php { ?>

指令

<\?(?!php|=)

<?php





沒有留言:

張貼留言

注意:只有此網誌的成員可以留言。

如何使用notepad++的正規表示法取代舊版的php語法

因為 PHP 8.2 起已 正式棄用未加引號的字串索引 ,所以之前不好的寫法會造成在新版出現錯誤,想說要改版就把之前不好的寫法都改掉,以免之後的版本不支援又要再改一次。 記得要點選【規則運算式】才會有作用 1.將未加引號的字串索引補上 像 $UserName=$_GET[name...