这似乎工作正常:
function findImageTags($string) {
$pattern = '/<div(.*?)sourcefile="([^"]+)"(.*?)>(.*?)<\/div>/s';
return preg_replace($pattern, $this->generateImage("$2"), $string);
}
function generateImage($url){
return $url;
}
但是当在 generateImage 函数中我尝试对参数做一些我不能做的事情时,因为参数的值是 $2 而不是实际值。
所以这不起作用:
function generateImage($url){
$array = explode('.', $url);
return $array;
}
顺便说一下,在模式中用 e 替换 s 似乎不起作用,因为我认为它已被弃用。
那么如何在 generateImage() 中操作参数的值呢?