Nasıl bir dize tüm harfler büyük harf olduğunu bilmek?
Kullanmak strtoupper sizin dize harfe dönüştürmek olabilir. Sen şimdi büyük olduğunu biliyorum, ve orijinal dize eşleşir olmadığını kontrol edebilirsiniz.
yani.
$str === strtoupper($str)
Sen, dizenin bir kopyasını yapmayı deneyin harflere kopyasını dönüştürmek ve özgün dizeye karşılaştırabilirsiniz:
public function isUpperCase ($string) {
return $string === strtoupper($str);
}
OR, (multibyte güvenli * olan) daha iyi bir versiyonu olacaktır:
public function mb_isUpperCase ($string) {
$upper = mb_convert_case(
$string,
MB_CASE_UPPER,
mb_detect_encoding(
$string
)
);
return $string === $upper;
}
* mb_detect_encoding başarısız ve yanlış dönebilirsiniz unutmayın. Bir üretim ortamında size mb_detect_encoding mümkün kodlamaları bir listesini sunmak, ya da mb_detect_encoding başarısız durumda işlemek gerekir ya.
if(strcmp(strtoupper($str), $str) === 0) {
echo 'is uppercase';
}
Kullan mb_strtoupper a> özel bir karakter kodlamaları dahil nerede.