PHP - 替换Array上的String

时间:2016-09-30 07:08:53

标签: php arrays

我想对用户输入的变量进行字符串替换。我可以知道如何让它接受(')字符串。比方说吧,

$string = ' *this* is 'a' test' ';
$regexes = array('/~(.*?)~/six','/\*(.*?)\*/six'); 
$replaces = array('<i>$1</i>','<b>$1</b>');
$new_string = preg_replace($regexes, $replaces, $string);   

echo $new_string;

我可以将其更改为粗体斜体文本,但如果字符串包含'''',则会出错。我想怎么做到这一点?

1 个答案:

答案 0 :(得分:1)

这可以帮助您,根据需要使用addslashesstripslashes

<?php
$string = " *this* is 'a' test' ";
$string = addslashes($string);
$regexes = array('/~(.*?)~/six','/\*(.*?)\*/six'); 
$replaces = array('<i>$1</i>','<b>$1</b>');
$new_string = preg_replace($regexes, $replaces, $string);   
echo stripslashes($new_string);
?>

此输出:是&#39; a&#39;测试&#39;