Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2006.08.13;
Скачать: [xml.tar.bz2];

Вниз

вопросик по пхп   Найти похожие ветки 

 
antonn ©   (2006-07-18 08:55) [0]

ковыряюсь в сабже и понадобилось перевести все символы в нижний регистр (или в верхний) для сравнения строк без учета регистра. Есть ли какая функция для изменения регистра? Типа AnsiLowerCase(). Нашел функцию strtolower(), но к ней уточнение о зависимости от параметра locale, а я даже не знаю, что это такое:)
Или может есть процедурка для сравнения строк без учета регистра?


 
cyborg ©   (2006-07-18 09:01) [1]

strtoupper
(PHP 3, PHP 4, PHP 5)

strtoupper -- Преобразует строку в верхний регистр
Описание
string strtoupper ( string string )

Возвращает строку string, в которой все буквенные символы переведены в верхний регистр.

Принадлежность того или иного символа к буквенным определяется с учетом текущей локали. Это означает, что, например, в используемой по умолчанию локали "C" locale, символ ? не будет преобразован.

Пример 1. Пример использования strtoupper()

<?php
$str = "Mary Had A Little Lamb and She LOVED It So";
$str = strtoupper($str);
echo $str; // выводит: MARY HAD A LITTLE LAMB AND SHE LOVED IT SO
?>  


Замечание: Эта функция безопасна для обработки данных в двоичной форме.

==========

strcmp
(PHP 3, PHP 4, PHP 5)

strcmp --  Сравнение строк, безопасное для данных в двоичной форме
Описание
int strcmp ( string str1, string str2 )

Возвращает отрицательное число, если str1 меньше, чем str2; положительное число, если str1 больше, чем str2, и 0 если строки равны.

Эта функция учитывает регистр символов.

=======

strcasecmp
(PHP 3 >= 3.0.2, PHP 4, PHP 5)

strcasecmp --  Сравнение строк без учета регистра, безопасное для данных в двоичной форме
Описание
int strcasecmp ( string str1, string str2 )

Возвращает отрицательное число, если str1 меньше, чем str2; положительное число, если str1 больше, чем str2, и 0 если строки равны. Пример 1. Пример использования strcasecmp()

<?php
$var1 = "Hello";
$var2 = "hello";
if (strcasecmp($var1, $var2) == 0) {
   echo "$var1 равно $var2 при сравнении без учета регистра";
}
?>


 
cyborg ©   (2006-07-18 09:02) [2]

http://www.php.net/docs.php
Качай справку, есть на русском языке, правда не до конца переведённая.


 
antonn ©   (2006-07-18 09:03) [3]

cyborg ©   (18.07.06 9:01) [1]
спасибище! :)
возьму последнюю, а то эти локали напрягают...


 
cyborg ©   (2006-07-18 09:04) [4]

> зависимости от параметра locale, а я даже не знаю, что это
> такое

Это учитывая текущий язык. Если установлен русский, то будет русские буквы корректно сравнивать.


 
antonn ©   (2006-07-18 09:05) [5]

cyborg ©   (18.07.06 9:02) [2]
я из Web Development Studio использую, просто на int не обращал внимание, искал string


 
antonn ©   (2006-07-18 09:06) [6]

cyborg ©   (18.07.06 9:04) [4]
Это учитывая текущий язык. Если установлен русский, то будет русские буквы корректно сравнивать.

во-во, а мне такая радость с настройками не нужна, мне попроще и "по-деревянней" :)


 
cyborg ©   (2006-07-18 09:07) [7]

Вот прямая ссылка http://www.php.net/download-docs.php


 
novoalex ©   (2006-07-18 09:07) [8]

int strcmp(st1,st2)- двоичное сравнение строк


 
programania ©   (2006-07-18 19:45) [9]

>а мне такая радость с настройками не нужна, мне попроще и "по-деревянней" :)

function lower($s){
return strtr($s,"ЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮ","йцукенгшщзхъфывапролджэячсмитьбю");
}

Можно еще попробовать
setlocale (LC_ALL, "ru_RU.KOI8-R");
или
setlocale (LC_ALL, "ru_RU.CP1251");
и т.п.
но мне все это не помогло


 
antonn ©   (2006-07-19 06:19) [10]

programania ©   (18.07.06 19:45) [9]
function lower($s){
return strtr($s,"ЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮ","йцукенгшщзхъфывапролджэячсмитьбю");  
}

а другие языки? неизвестно на каких языках текст будет.


 
VictorT ©   (2006-07-19 12:21) [11]


> а другие языки? неизвестно на каких языках текст будет.

и кодировки тоже разные?



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2006.08.13;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.042 c
8-1140082135
denis24
2006-02-16 12:28
2006.08.13
Настройка разрешения выводимой картинки


15-1153147494
StriderMan
2006-07-17 18:44
2006.08.13
кросс-платформенные приложения


15-1153054691
The Only
2006-07-16 16:58
2006.08.13
сумма квадратов натуральных чисел от 1 до n


1-1151311964
zdm
2006-06-26 12:52
2006.08.13
Работа с ККМ


6-1143499893
Vovanchik
2006-03-28 02:51
2006.08.13
WebBrowser и его содержимое





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский