我在php中制作大写字母时遇到了问题。
我试过这个功能:
function strtouper_srbija($string) {
$low=array("č" => "Č", "ž" => "Ž", "Š" => "š","Đ" => "đ","Č" => "č");
return strtoupper(strtr($string,$low));
}
并尝试使用来自html页面的一些POST数据,文本归档,但没有成功,所以如果你有解决方案,那就没事了。
另外,我找到了带有text-transform: uppercase;
的CSS解决方案,但是可以使用PHP示例。
答案 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;
}
的其他方式
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("ć", "Ĉ", "č", "Č", "š", "Š", "ž", "Ž");
$nova = str_replace($sumniki, $koda, $string);
return $nova;
}
2: 添加&#34; sumniki&#34;你这样的代码
$name = sumniki($_POST['name']);
$email = sumniki($_POST['email']);
等等,如果你有更多...