我对此字符串有疑问
目前我通过简单的插入查询将一些字符串保存到数据库中,并通过此代码清理数据
mysql_real_escape_string($data)
我使用简单的查询从数据库中获取数据
示例输入
$saveString = "You're great";
...节省
Insert into . . . values (mysql_real_escape_string($saveString))
现在当我收到字符串时,我得到You're great
字符串
当我使用此代码时
$str = str_word_count(strtolower($fromDbString), 1);
print_r($str);
输出:
Array
(
[0] => You're
[1] => great
)
但是如果字符串来自文本框中的用户输入并且我使用此代码。
$str = str_word_count(strtolower($fromUserInput), 1);
print_r($str);
我得到这样的东西:
Array
(
[0] => You
[1] => re
[2] => great
)
如何修复数据库中的字符串,使其处理类似于用户输入的字符串?
我尝试htmlentities()
来检查值,输出是
You're great
的
来自输入You're great
我试图从db中对字符串进行html解码但它仍然输出You're great
答案 0 :(得分:2)
您可以尝试添加addslashes():
$str = str_word_count(addslashes(strtolower($fromUserInput)), 1);
print_r($str);
答案 1 :(得分:0)
如果要返回包含所有字符串单词的数组,可以尝试使用str_word_count
$str = preg_split("/[' ]/", strtolower($fromUserInput));
//$str = preg_split("/[' ]/", strtolower($fromDbString));
print_r($str);