Underscores in the string will result in false, so you have to remove them first.
(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)
ctype_upper — Проверяет символы в верхнем регистре
Проверяет, состоит ли переданная строка (string)
text
только из букв в верхнем регистре.
text
Проверяемая строка.
Замечание:
Если передано целое число (int) в диапазоне между -128 и 255 включительно, то оно будет обработано как ASCII-код одного символа (к отрицательным значениям будет прибавлено 256, чтобы функция могла представить символы из расширенного диапазона ASCII). Остальные целые числа будут обработаны как строки, содержащие десятичные цифры целых чисел.
Возвращает true
, если каждый символ в строке text
—
это прописная буква из установленного языкового стандарта (локали).
При вызове с пустой строкой результатом всегда будет false
.
Пример #1 Пример использования функция ctype_upper() (с выбором локали по умолчанию)
<?php
$strings = array('AKLWC139', 'LMNSDO', 'akwSKWsm');
foreach ($strings as $testcase) {
if (ctype_upper($testcase)) {
echo "Строка $testcase состоит только из букв в верхнем регистре.\n";
} else {
echo "Строка $testcase не состоит только из букв в верхнем регистре.\n";
}
}
?>
Результат выполнения приведённого примера:
Строка AKLWC139 не состоит только из букв в верхнем регистре. Строка LMNSDO состоит только из букв в верхнем регистре. Строка akwSKWsm не состоит только из букв в верхнем регистре.
Underscores in the string will result in false, so you have to remove them first.
// after screwing around with function.ctype-upper
// I found this simple solution
if (strtolower($string) != $string)// its so simple!
{
echo "uppercase letters found in $string";
}
source: http://stackoverflow.com/questions/4426327/how-to-detect-if-string-contains-1-uppercase-letter-in-php