Специални символи на функцията Str_replace

Има ли някаква функция или начин за замяна на всички символи наведнъж?

$product['name'] = utf8_decode(strtolower( strip_tags( $child->name ) ) );
$product['name'] = str_replace(":", "-", $product['name']);
$product['name'] = str_replace("*", "", $product['name']);
$product['name'] = str_replace("#", "--", $product['name']);
$product['name'] = str_replace("@", "", $product['name']);
$product['name'] = str_replace("(", "---", $product['name']);
$product['name'] = str_replace(")", "", $product['name']);
etc
etc

Решение за мен: http://www.php.net/manual/en/function.str-replace.php#95198

function strReplaceAssoc(array $replace, $product) {
   return str_replace(array_keys($replace), array_values($replace), $product);   
} 

person Bas    schedule 30.03.2014    source източник
comment
str_replace приема аргументи на масива, моля, проверете документацията   -  person mesutozer    schedule 30.03.2014


Отговори (3)


Можете да използвате масив... Предайте тези знаци в масив, както е показано..

$product['name'] = str_replace(array(":",",","*"), "", $product['name']);
person Shankar Narayana Damodaran    schedule 30.03.2014
comment
благодаря, но как мога да го направя с array( ‹i› =› '-', ‹-i› =› '-', =› '', / =› '', =› '', / =› ' ' ) С str_replace_assoc? - person Bas; 30.03.2014
comment
@Bas, съжалявам, че отсъствах, когато ми изпратихте това съобщение.. Разрешихте ли го? - person Shankar Narayana Damodaran; 30.03.2014
comment
да, вижте решението на публикацията. Трябваше да заменя ключа за стойност. Вижте функция. благодаря - person Bas; 30.03.2014

Опитайте това

$product['name'] = utf8_decode(strtolower( strip_tags( $child->name ) ) );
$blacklist=array(':','*','#','@','(',')');//etc etc
$product['name'] = str_replace( $blacklist , "", $product['name']);
person Community    schedule 30.03.2014

person    schedule
comment
Моля, не предоставяйте отговори само с код. Обяснете какво прави вашият код. - person Gaurang Tandon; 30.03.2014