如何在PHP中使用上塞尔维亚字母,Č,Ć,Š,Đ,Ž

时间:2013-12-31 09:57:03

标签: php

我在php中制作大写字母时遇到了问题。

我试过这个功能:

function strtouper_srbija($string) {
        $low=array("č" => "Č", "ž" => "Ž", "Š" => "š","Đ" => "đ","Č" => "č");
        return strtoupper(strtr($string,$low));
    }

并尝试使用来自html页面的一些POST数据,文本归档,但没有成功,所以如果你有解决方案,那就没事了。

另外,我找到了带有text-transform: uppercase;的CSS解决方案,但是可以使用PHP示例。

3 个答案:

答案 0 :(得分:3)

你不能使用 mb_strtoupper 吗?

http://www.php.net/manual/en/function.mb-strtoupper.php

<?php
$str = "Τάχιστη αλώπηξ βαφής ψημένη γη, δρασκελίζει υπέρ νωθρού κυνός";
$str = mb_strtoupper($str, 'UTF-8');
echo $str; // Prints ΤΆΧΙΣΤΗ ΑΛΏΠΗΞ ΒΑΦΉΣ ΨΗΜΈΝΗ ΓΗ, ΔΡΑΣΚΕΛΊΖΕΙ ΥΠΈΡ ΝΩΘΡΟΎ ΚΥΝΌΣ
?>

答案 1 :(得分:1)

使用foreach循环遍历字符串:

function strtouper_srbija($string) {
    $letters = array("č" => "Č", "ž" => "Ž", "š" => "Š", "đ" => "Đ", "ć" => "Ć");
    $newString = $string;
    foreach ($letters as $lower=>$upper){
        $newString = str_replace($lower, $upper, $newString);
    }
    return $newString;
    }

Glavić

的其他方式
function strtouper_srbija($string) {
    $letters = array("č" => "Č", "ž" => "Ž", "š" => "Š", "đ" => "Đ", "ć" => "Ć");
    return str_replace(array_keys($letters), array_values($letters), $string);
}

echo strtouper_srbija('testiram ščćžđ ŠČĆŽĐ');

答案 2 :(得分:0)

这是答案...... 编辑你的PHP脚本并添加如下函数: 1:

function sumniki($string)
{ 
$sumniki = array("ć", "Ć", "č", "Č", "š", "Š", "ž", "Ž"); 
$koda = array("&#263;", "&#264;", "&#269;", "&#268;", "&#154;", "&#138;", "&#158;", "&#142;"); 

$nova = str_replace($sumniki, $koda, $string); 
return $nova; 
}

2: 添加&#34; sumniki&#34;你这样的代码

$name = sumniki($_POST['name']);
$email = sumniki($_POST['email']); 

等等,如果你有更多...