Я делаю str_replace()
для строки, которая иногда содержит косую черту.У меня есть str_replace:
$text = str_replace('<Reference code="'.$ref['code'].'">','<a href="#" onclick="Ti.App.fireEvent(\'openPage\',{\'code\':\''.$ref['code'].'\'})">',$text);
Однако, когда $ref['code']
равен (например) M100/3
, он не заменяется.Итак, мой вопрос, как мне сделать замену?
Каждое значение без обратной косой черты работает нормально.
Также обратите внимание, что в некоторых случаях str_replace выглядит так, не только в пределахПараметр HTML:
$text = str_replace('<Reference>'.(string)$ref.'</Reference>','<a href="#" onclick="Ti.App.fireEvent(\'openPage\',{\'code\':\''.(string)$ref.'\'})">'.(string)$ref.'</a>',$text);
edit:
Я пробовал addlashes (), но, похоже, он не работает:
$text = str_replace('<Reference>'.addslashes((string)$ref).'</Reference>','<a href="#" onclick="Ti.App.fireEvent(\'openPage\',{\'code\':\''.(string)$ref.'\'})">'.(string)$ref.'</a>',$text);