我想从输入字符串中转义所有特殊字符以处理shell命令。之后,给定的字符串应保存在DataBase中。
在PHP中,我试图使用以下代码转义所有代码,
$pattern = "/[_a-z0-9-]/i";
$new_content = '';
$content = 'My new string with symbols ₹~`!@#$%^&*()_+|{}<?>":[];/.,';
for($i = 0; $i < strlen($content); $i++) {
//if you found the 'special character' then add the \
if(!preg_match($pattern, $content[$i])) {
$new_content .= '\\' . $content[$i];
}
else {
//if there is no 'special character' then use the character
$new_content .= $content[$i];
}
}
$keyvalue[1] = $new_content;
注意:
我设置shell以支持UTF-8字符 如果我使用键盘键入卢比符号,我的PHP无法识别它并显示这样的符号..最后我得到一个错过字符的字符串。
此处使用Shell命令将响应从PHP发送到Python
我正在使用PHP v 5.5.9的Linux系统
请让我知道你的想法:)
答案 0 :(得分:0)
我会做类似的事情:
<?php
$pattern = "/[^_a-z0-9- ]/i";
$content = 'My new string with symbols ₹~`!@#$%^&*()_+|{}<?>":[];/.,';
$newcontent = preg_replace($pattern,'',$content);
echo $newcontent;
打印:
带符号_
的新字符串