我有以下正则表达式回调,而我遇到的问题是,在最终结果中,'
被删除。我该怎么做才能防止这种情况发生?
<?php
$eval = "'$server.REQUEST_URI' == '/user/photos'";
$result = preg_replace_callback('/\'(.+)\'/isU', function($matches){
$match = $matches[1];
$find = Object69::find($match);
return !empty($find) ? $find : $match;
}, $eval);
var_dump($result);
这是$result
string(29) " /user/photos == /user/photos"
这就是我的期望:
string(29) "'/user/photos' == '/user/photos'"
以下是它找到的数组$matches
:
array(2) {
[0]=>
string(21) "'$server.REQUEST_URI'"
[1]=>
string(19) "$server.REQUEST_URI"
}
array(2) {
[0]=>
string(14) "'/user/photos'"
[1]=>
string(12) "/user/photos"
}