2
我想使用NameCase在code.google.com上的php類。當我運行它時,我收到了這個通知,我不明白爲什麼。PHP的preg_replace反向引用導致未定義的常量通知
PHP公告:未定義的常量的MC使用 - 假定 '了Mc' 在 namecase.php(54):1號線
53 if(preg_match('/\bMac[A-Za-z]{2,}[^aciozj]\b/', $str) || preg_match('/\bMc/', $str)) {
54 $str = preg_replace("/\b(Ma?c)([A-Za-z]+)/e", "$1.ucfirst('\\2')", $str);
55 // Now correct for "Mac" exceptions
56 $str = preg_replace('/\bMacEvicius/','Macevicius', $str); // Lithuanian
57 $str = preg_replace('/\bMacHado/', 'Machado', $str); // Portuguese
58 $str = preg_replace('/\bMacHar/', 'Machar', $str);
59 ...
正則表達式的代碼有沒有什麼可以做更正代碼,使其不會產生通知。
感謝
而在5.3之前,你已經可以通過'create_function()'來傳遞閉包了。可能不像5.3+封閉那樣整潔和「乾淨」,但仍然如此。 –
測試了兩種解決方案並且工作完美!感謝您的快速回復。 – Brandon
更正:當然我的意思是匿名函數,而不是閉包。 –