php - 什么 PHP 函数将 ø 转换为 Å?

标签 php

谁能告诉我什么 PHP 函数将 ø 转换成 Å

我将 æ, ø, å, ö, ä 等特殊字符存储为 html 编码字符。

我搜索过 google 和 Stackoverflow,但不知道要搜索什么。
我以前管理过,但不记得如何:(

以下无效:

$tmp = ('Øving, ære, blå');
$tmp2 = htmlspecialchars($tmp);
echo $tmp.' - '.$tmp2;

输出是:Øving, ære, blå - Øving, ære, blå

我也尝试过htmlentities:

$tmp = ('Øving, ære, blå');
$tmp2 = htmlentities($tmp);
echo $tmp.' - '.$tmp2;

此输出:Øving, ære, blå - Ã�ving, ære, blÃ¥

当我想要的时候
Øving, ære, blå - Øving, ære, blå

最佳答案

这取决于特殊字符的编码方式(在 php 中)。 假设你可以使用 UTF-8

 $str2 =  htmlentities($str2,ENT_COMPAT,"UTF-8");

但下面的可能更健壮,(如果你支持 mb_ 函数)

$str2 =  mb_convert_encoding ($str1,"HTML-ENTITIES","UTF-8");

更新:在指定的示例(字符 u+00C5)中,我已验证两者都有效。并且第二个在以下意义上确实更健壮:当没有为给定的 unicode 字符找到命名实体时,第一个备选方案保持不变,第二个备选方案使用数字实体。如果我们想避免在 HTML 页面中出现非 ascii 字符,则首选第二种。要检查的一些行:

<?php 

 for($i=129;$i<3000;$i++)
    printUnicode($i);

  function printUnicode($value) {
      $one_character = pack("L", $value);
      $u8 = iconv("UTF-32", "UTF-8", $one_character);
      echo join("\t",array(
         $value,
         $u8,
         htmlentities($u8,ENT_COMPAT,"UTF-8"),
         mb_convert_encoding($u8,"HTML-ENTITIES","UTF-8")))
            . "\n";

  }
?>

和一些示例输出:

187     »       &raquo;         &raquo;
188     ¼       &frac14;        &frac14;
189     ½       &frac12;        &frac12;
190     ¾       &frac34;        &frac34;
191     ¿       &iquest;        &iquest;
192     À       &Agrave;        &Agrave;
193     Á       &Aacute;        &Aacute;
194     Â       &Acirc;         &Acirc;
195     Ã       &Atilde;        &Atilde;
196     Ä       &Auml;          &Auml;
197     Å       &Aring;         &Aring;
...
655     ʏ       ʏ              &#655;
656     ʐ       ʐ              &#656;
657     ʑ       ʑ              &#657;
658     ʒ       ʒ              &#658;
659     ʓ       ʓ              &#659;

关于php - 什么 PHP 函数将 ø 转换为 Å?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5681661/

相关文章:

php - Ajax 搜索返回问题

php - Laravel 5.1 view composer 在中间件之前启动

php - 使用 SQL 查询获取所有 Magento 类别

php - facebook og 图像共享以突出显示功能

php - 如何在 PHP 中对这些数据进行 json 编码?

php - "Notice: Undefined variable"、 "Notice: Undefined index"、 "Warning: Undefined array key"和 "Notice: Undefined offset"使用 PHP

php - 上传大视频

PHP_SELF 和 GET 参数

php - PHP/MySQL 中的编码问题

php - 我需要将联系表单数据存储到数据库中我做了一些代码,但在 IndexController.php 中出现错误