2017-03-22 68 views
2

我试图改变这个字符串字符串中的某些字符无法替代

测试 - GGAökologieGeschäftsführer.PDF

到这一点:

测试_-_ gga_oekologie_geschaaeftsfuuehrer.pdf

这就是我试过的:

以上的回报代码:测试_-_gga_ökologie_geschäftsführer.pdf

正如你所看到的字符串仍包含字符öä

我的代码有什么问题?

+1

尝试添加报头( '内容类型:文本/ HTML;字符集= UTF-8'); –

+0

你有试过双引号吗? –

+0

这很可能是一个编码问题。在我的UTF8保存的php文件中使用你的代码进行测试的时候,所有的东西都像魅力一样。 –

回答

4

试试这个。我已经检查过了。您必须复制字符串中的字符并将其替换为数组。它会完成这项工作。数组中的字符和字符串中的字符不同。

+1

为什么downvote。我是那个检查和回答的人。有人认为我只是贴上了上面的答案吗? – shazyriver

+1

谢谢你,帮助我! – Reza

+0

不客气。 – shazyriver

5

它们不是相同的unicode字符。如果您复制并粘贴字符串中的字符,并将其粘贴到阵列中,它将按预期工作。

5

随着正则表达式

$characters = array('/ä/u', '/ö/u', '/ü/u', '/Ä/u', '/Ö/u', '/Ü/u', '/ /'); 
$converted_characters = array('ae', 'oe', 'ue', 'AE', 'OE', 'UE', '_'); 
$string = 'Test - GGA ökologie Geschäftsführer.PDF'; 

echo strtolower(preg_replace($characters, $converted_characters , $string));