我具有减少其中一项服务的链接的功能:
function Shorten($url){
$api_url="https://server/api?api=key&url=".$url."&format=text";
$res= @file_get_contents($api_url);
if($res){
return $res;
}}
我有发送服务器的信件的html代码:
Hey! Go in <a href="http://google.com">Google</a> or <a href="http://yahoo.com">Yahoo</a>
我需要用一个函数替换链接,即在服务器上减少它们。但我不能用preg_replace
中的值替换。
答案 0 :(得分:0)
您正在寻找preg_replace_callback。关键是获得正确的正则表达式以匹配您要替换的所有URL,例如:
preg_replace_callback("@https?://[\w\./]@", 'Shorten', $content)