2016-01-09 63 views
0

我想向具有特殊字符的字符串添加反斜槓。如何將斜線添加到PHP中的特殊字符?

我輸入的是:

db:[email protected]#dfs$dlf%dks^kd&fkf*kdf(dls)kls-fls+fsd=slf_fls[fdf]fdf{ffl}sl|dkf\fsl'skfj 

而且我的輸出應該是:

db\:xz\~sf\!fkd\@djf\#dfs\$dlf\%dks\^kd\&fkf\*kdf\(dls\)kls\-fls\+fsd\=slf\_fls\[fdf\]fdf\{ffl\}sl\|dkf\\fsl\'skfj 

和我有下面這段代碼只用反斜槓字符替換特殊字符:

<?php 
echo $string = "db:[email protected]#dfs$dlf%dks^kd&fkf*kdf(dls)kls-fls+fsd=slf_fls[fdf]fdf{ffl}sl|dkf\fsl'skfj"; 
echo preg_replace('/[^A-Za-z0-9\-]/', '\\', $string); 

那麼有人可以幫我解決這個問題嗎?

回答

1

您可以使用:

$s = 'db:[email protected]#dfs$dlf%dks^kd&fkf*kdf(dls)kls-fls+fsd=slf_fls[fdf]fdf{ffl}sl|dkf\fsl\'skfj'; 

echo preg_replace('/\W/', '\\\\$0', $s) 
//=> db\:xz\~sf\!fkd\@djf\#dfs\$dlf\%dks\^kd\&fkf\*kdf\(dls\)kls\-fls\+fsd\=slf_fls\[fdf\]fdf\{ffl\}sl\|dkf\\fsl\'skfj 
+1

感謝anubhava。 –

相關問題