gpt4 book ai didi

PHP/MySQL - 不允许我插入(或替换)右单引号 "’ "

转载 作者:行者123 更新时间:2023-11-29 18:30:35 25 4
gpt4 key购买 nike

我有一个包含电台名称列表的 CSV 文件。有些名称包含右单引号:’(不是普通的单引号)。

我正在尝试从文件中读取它并插入到数据库中。所有电台都工作正常,但带有引号的电台会以 0 形式插入数据库。

我试图将其替换为正常的引号,但 PHP 似乎在字符串中找不到引号。

if(strpos($stationName, "’") !== false){
var_dump($stationName);
var_dump(str_replace("’", "'", $stationName));
die();
}

上面的代码永远不会被触发。我是否需要对 PHP 或 MySQL 中的编码进行一些处理?我应该如何解决这个问题?

工作正常的字符串示例:兰顿·马特拉弗斯 (Langton Matravers),裂缝巷底部(N 向)

以及插入为 0 的示例:哈曼十字路口,威尔克斯伍德农场路(西北方向)

如果这有什么区别的话,我正在使用 Laravel。

谢谢。

编辑:

我运行了检测解码,这表明该字符串采用 ASCII 编码 - 我相信这可能是问题所在,但我似乎无法更改编码?

我运行以下几行:

$stationName = mb_convert_encoding($stationName, "UTF-8", "ASCII");
var_dump(mb_detect_encoding($stationName));

仍然得到字符串为 ASCII 的输出?

编辑2:

事实证明,这是实际 CSV 文件编码以及我使用的 CSV 库 (Laravel-Excel) 读取它的方式的问题。调整配置并转换 CSV 文件编码似乎已经解决了该问题。

最佳答案

事实证明,这是实际 CSV 文件编码以及我使用的 CSV 库读取它的方式的问题。调整配置并将 CSV 文件编码转换为 UTF-8 似乎已经解决了该问题。

关于PHP/MySQL - 不允许我插入(或替换)右单引号 "’ ",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45722327/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com