所以我试图从 mysql 数据库中提取一系列字符串以用于 php 页面。
我使用这个函数:
function getText(){
$mysqli = new mysqli( DB_HOST, DB_USER, DB_PASSWORD, DB_NAME );
$texts = $mysqli->query('SELECT * FROM texts;');
return $texts;
}
然后我这样做:array = $tests->fetch_assoc()
来获取关联数组的一行。然后我使用 $array["text"]
访问文本 我遇到的问题是我正在检索的文本需要在其中包含 "
因为使用case 但 $array["text"]
只包含第一个 "
之前的文本。解决此问题的最佳方法是什么?
最佳答案
如果 sql 返回的东西被截断了,那么有两个(简单的)答案
- 这是数据库中的内容
- 编码问题。
第二个在这里不是问题。 第 1 项可能是案例。
- 您的文本字段太短。
- 您的插入正在删除第一个 "之后的数据,因为它没有转义
如果您可以 var_dump($texts);
在您的函数中,您将看到来自数据库的数据是否已经有错误或它在您的代码中更深的地方。
如果它更深,那么我建议您为 ,,corruept'' 字符串添加 addslashes
或实体编码 - 这可以防止您的代码以后弄乱它。
关于php - 处理查询结果中的引号 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23465278/