2012-08-02 77 views
1

键和值mysql。Preg_replace dynamic

$valores[$codigo] = "<img src=\"template/" . $template . "/smiles/" . $smile . "\" border=\"0\"/>"; 
$arrayKeys = array_keys($valores); 
$arrayValues = array_values($valores); 
return preg_replace($arrayKeys, $arrayValues, $coment); 

错误,警告:preg_replace()[function.preg-replace]:无结尾分隔符':'找到。

+0

http://php.net/manual/en/regexp.reference.delimiters.php – cmbuckley 2012-08-02 10:39:46

+0

什么是$ codigo?什么是美元?您想做什么?我不明白这个问题。 Por los nombres de las variables supongo que hablasespañol。 Creo que no seestáentendiendoquées lo que quieres hacer realmente。 Creo quedeberíasreformular la pregunta explicando un pocomás。 – Curlas 2012-08-02 10:50:31

回答

1

您可能想用str_replace()代替。

编辑:

你只需要通过str_replace函数替换的preg_replace:

return str_replace($arrayKeys, $arrayValues, $coment); 

看到这里的文档str_replace()

+0

可以告诉我如何使用这个功能? – 2012-08-02 10:48:51

+0

我设法让我无知!谢谢! – 2012-08-02 10:49:49

+0

欢迎您:) – Oussama 2012-08-02 10:51:43

0

的preg_replace() - 执行一个正则表达式搜索和替换

如果我理解正确,你想用s代替:)英里的图像,因此您可以是这样做的:

<?php 
    $search = array(":))",":)"); 
    $replace = array("<img src=\"template/" . $template . "/smiles/laugh.jpg\" />","<img src=\"template/" . $template . "/smiles/smile.jpg\" />"); 
    str_replace($search, $replace, $comment); 
?>