Интернет - справочник для веб-мастеров
    441-847-152
     
 
 
php, javascript,ajax,mysql,TIGER CMS
  Для начинающих
php, javascript,ajax,mysql,TIGER CMS
  Общие
php, javascript,ajax,mysql,TIGER CMS
  Безопасность
php, javascript,ajax,mysql,TIGER CMS
  Интересное
php, javascript,ajax,mysql,TIGER CMS
  Новости PHP
php, javascript,ajax,mysql,TIGER CMS
  PHP + AJAX
php, javascript,ajax,mysql,TIGER CMS
  JavaScript
php, javascript,ajax,mysql,TIGER CMS
  Дизайн
php, javascript,ajax,mysql,TIGER CMS
  Раскрутка
php, javascript,ajax,mysql,TIGER CMS
  Заработок
php, javascript,ajax,mysql,TIGER CMS
  Советы

   
 

   
 
  SEO статьи HTML, как раскрутить сайт
1. Рейтинг сайтов



 
 
  Всего статей: 405
  Опубликовано: 405
  Проверяються: 0
  Добавлено сегодня: 0
-------------------------------------
  Прочитано статей: 405
  Всего прочтений: 181074
-------------------------------------
  Сейчас читают: 3 чел.


 

Форматирование строк [Версия для печати]
Разместил: admin . Раздел: Общие. Опубликовано: 09-20-2007 20:00:58

Часто строки, вводимые пользователем, приходится очищать от служебных символов, прежде чем эти строки можно будет использовать по назначению. Также, если предполагается сравнение данной строки с другими или хранение ее в базе, следует использовать следующие функции. 

string trim(string input) - удаляет пробелы, , , , v, в начале и конце строки; 
string ltrim(string input) - аналогична trim(), но удаляет пробелы в начале(слева) строки; 
string chop(string input) - аналогична trim(), но удаляет пробелы в конце(справа) строки; 

В большинстве случаев, когда скрипт (использующий информацию из файла либо из базы) работает некорректно, применение данных функций позволяет устранить ошибки. 
Функция nl2br() принимает строку в качестве параметра и заменяет в ней все символы новой строки XHTML-дескриптором.

Это полезно при выводе длинной строки в окне браузера.

Изменение регистра строки

Пусть дано выражение $str = "Органная музыка очень красива". 

Тогда, после применения следующих функций: 

strtoupper($str) возвратит "ОРГАННАЯ МУЗЫКА ОЧЕНЬ КРАСИВА"; 
strtolower($str) - "органная музыка очень красива", 
ucfirst($str) сделает первый символ (если он буквенный) строки прописным - "Органная музыка очень красива"; 
ucwords($str) - сделает прописным первый символ каждого слова в строке - "Органная Музыка Очень Красива"; 

Объединение и разделение строк с помощью строковых функций

 Часто возникает необходимость просматривать части строк по отдельности. Распространенная ситуация - клиент приносит вам .csv файл, созданный в Excel. И информацию, содержащуюся в этом файле с разделителями, необходимо представить в Web. Пусть в данном файле есть строка "Арманьяк;0,7 л.;Испания;1200 р.". Считав ее из файла с помощью fgets(), мы можем обработать ее следующими функциями:

 array explode(string separator, string input [, int limit]) - принимает строку input и делит ее на части по заданной разделительной строке separator; части строк возвращаются в виде массива; Можно ограничить число таких частей посредством необязательного параметра limit. 

Пример: 

$str = fgets($f, 1024);
$a = explode(';', $str); 
print_r($a);//распечатка массива

string strtok(string input, string separator) - в отличии от функции explode(), которая делит за один вызов на части сразу всю строку, данная функция позволяет получать фрагменты строки по одному за один вызов. В качестве разделителя можно использовать символ или строку символов, но следует иметь в виду, что строка ввода будет разделяться по каждому из символов разделителя, а не по всей строке разделителя. Внимание! Для получения первой лексемы из строки нужно вызвать функцию со строкой, которую требуется разбить на лексемы, и с разделителем. Чтобы получить из заданной строки последующие лексемы, достаточно передать функции один параметр, а именно, разделитель. Функция сохраняет собственный внутренний указатель на позицию разделителя в строке. Как правило, функция strtok() используется следующим образом: 

$str = fgets($f, 1024); 
$tok = strtok($str, ';'); 
echo $tok.'';
 while ($tok != ';') 

$tok = strtok(';'); 
echo $tok.''; 
}

Функция substr() 

 Данная функция позволяет получить доступ к подстроке между заданными начальной и конечной позициями в строке. 

Прототип: string substr(string str, int start[, int length]) - возвращает подстроку из строки str, начиная с позиции start длиной length. Если вызывать функцию с отрицательным значением параметра start, то получим строку, состоящую из символов, отсчитываемых с конца строки, число которых задано параметром start. 

Сравнение строк

Упорядочение строк 

int strcmp(string str1, string str2) - если две строки равны, то функция вернет значение 0; если в лексикографическом порядке строка str1 следует за (или больше чем) строкой str2, она вернет положительное число (и наоборот). Эта функция относится к числу чувствительных к регистру. 

Функция strcasecmp() идентична рассмотренной выше функции и отличается от нее только тем, что нечувствительна к регистру. Функция strnatcmp() и ее нечувствительный к регистру аналог strnatsasecmp() сравнивают строки в "естественном порядке", который более привычен для человека. Например, функция strcmp() располагает строку "2" после строки "12", поскольку лексикографически первая трока больше второй. Данные же функции располагают их в обратном порядке. 

Проверка длины строки 

strlen() - возвращает длину строки. Например, strlen('desert') вернет значение 6. 

Сопоставление и замена подстрок с помощью строковых функций 

Поиск строк в строках 

string strstr(string haystack, string needle) - используется для поиска соответствующей строки или символа внутри более длинной строки. Данная функция полностью совпадает по возможностям с strchr() (в отличии от аналогичной функции в языке С). Если строка needle будет найдена в строке haystack, функция возвращает часть строки haystack, начинающуюся со строки needle; в противном случае она возвращает значение false. Если строка needle встречается более одного раза, возвращаемая строка будет начинаться с первого вхождения строки needle. 

stristr() - идентична предыдущей функции, но в отличии от нее, не чувствительна к регистру. Также существует функция strrchr(), которая также идентична strstr(), но возвращает часть стоки haystack, начиная с последнего вхождения строки needle. 

Определение позиции подстроки

Функции strpos() и strrpos() действуют аналогично функции strstr() и отличаются от нее только тем, что вместо подстроки возвращают числовую позицию строки needle внутри строки haystack. 

Функция strrpos() возвращает позицию последнего вхождения строки needle в строке haystack, в отличии от strpos(), которая возвращает позицию первого вхождения. Важно: strrpos() работает только с односимвольной строкой (если передать ей многосимвольную строку в параметре needle, то она будет использовать первый символ переданной строки). Если needle не содержится в haystack, данные функции возвращают false. Иногда это является источником проблем, так как в таком слаботипизированном языке, как PHP, значение false эквивалентно 0, т.е., первому символу в строке. Избежать этой проблемы можно, воспользовавшись операцией === для проверки возвращаемых значений: 

if (strpos($str, 'p') === false) {...} 

Замена подстрок 

mixed str_replace(mixed needle, mixed new_needle, mixed haystack) - замещает все экземпляры строки needle в строке haystack на строку new_needle. Интересная особенность данной функции - можно передать все параметры как массивы, благодаря чему интеллектуальный уровень этой функции заметно возрастает. Можно задать массив слов, подлежащих замене, и массив слов, на которые, соответственно, будут заменены слова первого массива, а также массив строк, к которому эти замены будут применены. Рассматриваемая функция вернет массив пересмотренных строк. Например, можно использовать ее для цензурирования определенных терминов в приложении дискуссионного форума

string substr_replace(string str, string repl, int start[, int length]) - данная функция замещает часть строки str строкой repl. Какую именно часть - зависит от остальных параметров. Параметр start задает смещение, с учетом которого начинается замена. Если оно равно 0 или положительно, то смещение определяется относительно начала строки, если же оно отрицательно, то смещение определяется относительно конца строки. Параметр length (необязательный) задает позицию, в которой PHP прекращает замену. Если это значение не указано, замена производится с позиции, определенной параметром start, и до конца строки. Нулевое значение данного параметра означает, что строка замены будет вставлена в строку без перезаписи существующей строки. Положительное значение означает количество символов, которые должны быть заменены новой строкой. Отрицательное представляет собой позицию относительно конца строки, начиная с которой замена символов прекращается.

Источник: http://web-brodilka.ru   Прочитана 671 раз.
  Закладки:  
     
     
     
Google
 




     
Copyright 2007 by bvisoft.com