带有“严重”重音的str_replace

时间:2018-04-13 10:51:18

标签: php

我正在开发一个网页,我想从数据库中打印一些信息。我发现问题是“严重”重音的信息无法转换为大写。

例如,我有以下信息:JohnSerànMollò,我需要将其转换为大写。这应该是结果:JOHNSERÀNMOLLÒ

我正在尝试以下代码:

            $filtre = array("&agrave", "&egrave", "&ograve");
            $modificacions = array("a", "e", "o");
            $phrase = str_replace($filtre, $modificacions, $vols[$i]['crew']);
            var_dump($phrase);
            echo strtoupper($phrase); ?>

在这种情况下,结果应该是JOHN SERAN MOLLO(没有重音符号),但我明白了:JOHNSERàNMOLLò。

我做得不好?我怎样才能获得JOHN SERAN MOLLO(没有口音),或者,如果可能的话,我怎样才能获得JOHNSERÀNMOLLÒ(大写的口音)。

2 个答案:

答案 0 :(得分:1)

如果您的安装已加载mbstring扩展名(根据我的经验,大多数都已加载),您应该可以使用mb_strtoupper,例如

echo mb_strtoupper($phrase);

默认情况下,这将使用默认的内部编码,因此应该只需要,但您可能还需要提供第二个参数来指定字符串编码。

如果该功能不可用,则可在此处使用填充:https://github.com/symfony/polyfill-mbstring

答案 1 :(得分:0)

使用strtoupper()函数或mb_strtoupper()函数。 Woohaa试试这个......祝你有个美好的一天...... Seeya ......

FailedPreconditionError (see above for traceback): Attempting to use uninitialized value conv1d_0/bias
 [[Node: conv1d_0/bias/read = Identity[T=DT_FLOAT, _class=["loc:@conv1d_0/bias"], _device="/job:localhost/replica:0/task:0/device:CPU:0"](conv1d_0/bias)]]