好的,这就是我所拥有的,但每当我这样做时,我都会返回数据库的第一条记录:
<?php
function getInfo($id,$slot){
if(!$id){ return '<b>Error</b> Id Not Returned. Please contact support@site.com for more information.'; }
$mm = mysql_query("SELECT * FROM `users` WHERE `id`='".$id."'");
$mma = mysql_fetch_assoc($mm);
$p = $mma[$slot];
return $p;
//return $id; <- Debug (Returns ID given)
}
$post = preg_replace("/\[CallName]([^]]+)\[\/CallName\]/", getInfo('\\1',"fullname"), $post);
?>发布于 2011-05-16 08:59:57
我很惊讶你得到了任何returned...your preg_replace模式应该给你的错误(你没有转义你的一些括号)。但不管怎样,您不能像那样将捕获的组传递给您的函数。您必须使用"e“模式修饰符(请参阅preg_replace手册中的示例4
https://stackoverflow.com/questions/6012300
复制相似问题