- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我目前正试图将“Kévin”等名称转换为“Kevin”,然后再转换为“KEVIN”。
当前数据库设置为 Latin1_swedish_ci。如果名称来自 MySQL,则不起作用,我不知道为什么。我已经尝试将 latin1 更改为 utf8_general_ci 但没有任何变化。
名字 Kévin 在 MySQL 中写入为“Kévin”。
正在使用的功能:
function strToNoAccent($var) {
$var = str_replace(
array(
'à', 'â', 'ä', 'á', 'ã', 'å',
'î', 'ï', 'ì', 'í',
'ô', 'ö', 'ò', 'ó', 'õ', 'ø',
'ù', 'û', 'ü', 'ú',
'é', 'è', 'ê', 'ë',
'ç', 'ÿ', 'ñ',
'À', 'Â', 'Ä', 'Á', 'Ã', 'Å',
'Î', 'Ï', 'Ì', 'Í',
'Ô', 'Ö', 'Ò', 'Ó', 'Õ', 'Ø',
'Ù', 'Û', 'Ü', 'Ú',
'É', 'È', 'Ê', 'Ë',
'Ç', 'Ÿ', 'Ñ',
),
array(
'a', 'a', 'a', 'a', 'a', 'a',
'i', 'i', 'i', 'i',
'o', 'o', 'o', 'o', 'o', 'o',
'u', 'u', 'u', 'u',
'e', 'e', 'e', 'e',
'c', 'y', 'n',
'A', 'A', 'A', 'A', 'A', 'A',
'I', 'I', 'I', 'I',
'O', 'O', 'O', 'O', 'O', 'O',
'U', 'U', 'U', 'U',
'E', 'E', 'E', 'E',
'C', 'Y', 'N',
),$var);
return $var;
}
代码运行:
$name = "Kévin";
$name = strToNoAccent($name);
$name = strtoupper($name);
echo $name; // Result is KEVIN
代码因未知原因而无法工作:
$chresult=mysql_query("SELECT * FROM personnel");
$y=0;
while ($y < mysql_num_rows($chresult)) {
$name = mysql_result($chresult, $y, 'name');
$name = strToNoAccent($name);
$name = strtoupper($name);
echo $name; // Result is KÉVIN
$y++;
}
最佳答案
看起来像是编码问题。您尝试过使用 iconv 吗?喜欢:
$name = iconv('UTF-8', 'ASCII//TRANSLIT', $name);
查看:https://stackoverflow.com/a/3542748/2761700 & How do I remove accents from characters in a PHP string?
更新:也使用utf8_encode。完整代码:
$chresult=mysql_query("SELECT * FROM personnel");
$y=0;
while ($y < mysql_num_rows($chresult)) {
$name = utf8_encode(mysql_result($chresult, $y, 'name'));
$name = iconv('UTF-8', 'ASCII//TRANSLIT', $name);
$name = strtoupper($name);
echo $name;
$y++;
}
关于php - 使用 PHP 将网页中的重音符号从 MySQL 转换为无重音符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34595216/
我正在寻找一种方法来支持不区分大小写 + 重音不区分搜索的良好性能。到目前为止,我们在使用 MSSql 服务器时没有遇到任何问题,在 Oracle 上我们必须使用 OracleText,而现在我们在
这个问题已经有答案了: Trouble with UTF-8 characters; what I see is not what I stored (5 个回答) 已关闭 5 年前。 我刚刚将一个我
我正在寻找一种在 Linux 中使用反引号 (`)/波形符 (~) 键和其他一些键创建键盘快捷键的方法。在理想情况下: 按下波形符没有任何作用 按下波形符的同时按另一个键会触发(可自定义的)快捷方式
我有一个由术语组成的数组,其中一些包含重音字符。我像这样做一个 preg grep $data= array('Napoléon','Café'); $result = preg_grep('~' .
我使用 TextBox 在 DataGridView 中进行过滤 image .这是完美的工作。表格的单元格包含 1250 个拉丁字符。我想搜索忽略单元格中单词的重音。例子。如果是文本框 "knjaz
我在 Vim 中遇到一个奇怪的映射问题。我使用的是 Azerty 键盘。 在我的 .vimrc 中,我有以下命令可以在段落之间快速移动。 nnoremap _ { vnoremap _ { nnore
我尝试读取一个utf8编码的vcf文件,结果是: { "name": "=4A=61=76=69=65=72=20=4C=75=6A=C3=A1=6E", "tel":
我的数据库中有两个表,info 和 comment,它们的结构如下: info (id(int(10)), name(varchar(80)), ...19 other columns.., phon
我使用 QtWebkit 制作了一个应用程序。在同一个 html 页面中,在 Windows 上使用重音符号(西类牙语)时可以正常工作,但在 Linux (Ubuntu) 上则不起作用。 我不明白为什
我有(例如)两个字符串: $a = "joao"; $b = "joão"; if ( strtoupper($a) == strtoupper($b)) { echo $b; } 我希望它是
这个问题在这里已经有了答案: 关闭 10 年前。 Possible Duplicate: invalid multibyte char (US-ASCII) with Rails and Ruby
我重写 URL 以包含用户生成的旅游博客的标题。 我这样做是为了 URL 的可读性和 SEO 目的。 http://www.example.com/gallery/280-Gorges_du_Tod
我最近安装了新的 Windows 10 build 14393,我想使用新的 linux 子系统。所以我决定学习 ncurses,但我找不到如何从 getch 中获取带有重音符的字符的 UTF-8 代
我是一名优秀的程序员,十分优秀!