Удаление концевых пробелов

Изза небрежности пользователя при вводе информации, а иногда изза неак
куратного HTMLкода часто к строкепеременной добавляются лишние пробе
лы. Перед тем как применять подобные строки, эти пробелы обязательно нуж
но удалить. В таком случае вам удастся избежать множества проблем. Строка
с невидимым дополнительным пробелом уже не будет совпадать с такой же
строкой без пробела. Лишние пробелы, посланные в Webбраузер, могут иска
зить вид страницы, а пробелы, отправленные в базу данных, или cookieфайлы
вызвать еще более неприятные последствия. Например, если пароль содержит
концевые пробелы, он не будет действителен при введении без пробелов.
Функция trim ( ) автоматически отсекает лишние пробелы в начале и конце
строки (но не в середине). Используется следующий формат функции trim( )

$String = " extra space before and after text";
SString = trim($String) ;

// Переменная $String теперь равна “extra space before and after text”.
Вернемся к сценарию HandleForm.php из главы 3 и на этот раз вниматель
но и грамотно обработаем все полученные от пользователя строки.

    Выполнение действия
  1. Откройте сценарий HandleForm.php в текстовом редакторе (листинг 5.1).
    Листинг 5.1 т Первая версия сценария HandleForm.php совсем проста, так
    что в него нужно добавить некоторые дополнительные средства обработки
    полученных данных.
  2. 1 <HTML>
    2 <HEAD>
    3 <TITLE>Form Results</TITLEx/HEAD>
    4 <BODY>
    5 <?php
    6' /* Эта страница получает и обрабатывает данные, принятые
    от "form.html". */
    7 print ("Your first name is $FirstName. <BR>n" ) ;
    8print ("Your last name is $LastName.<BR>n" ) ;
    9print ("Your Email address is $Email .<BR>n" ) ;
    10 print ("This is what you had to say:<BR>n $Comments<BR>n" )
    11 ?>
    12</BODY>
    13</HTML>

  3. В листинг 5.1 после строки 6 (комментарий) добавьте следующую строку:
  4. SFirstName = trim($FirstName);

    Убрав концевые пробелы из переменной $FirstName, вы исключите пере
    дачу в браузер такого утверждения как “Your f i r s t name is _Larry_”, содержа
    щего лишние пробелы (рис. ).

  5. $LastName=trim($LastName);
    $Email = trim($Email);
  6. Приведение в порядок адреса электронной почты очень полезно, так как
    лишние пробелы могут сделать адрес нерабочим.

    $CommentS = trim($Comments);

    Функция t r i m ( ) работает одинаково независимо от того, откуда взята стро
    ка: из короткого фрагмента текста (как переменная $FirstName или $ Email),
    из текстового окна HTML или параграфа из текстовой области.

  7. Сохраните сценарий (листинг 5.2) все еще как HandleForm.php, загрузи
    те его на сервер и протестируйте в браузере (рис. 5.35.5).
    Листинг 5.2. Кроме отсечения лишних пробелов от всех получаемых дан
    ных, я изменил также название страницы, хотя этого можно и не делать.

1 <HTML>
2 <HEAD>
3 <TITLE>Form Results/Using Strings</TITLEx/HEAD>
4 .<BODY>
5 <?php
6 /* Эта страница получает и обрабатывает данные, принятые
от "form.html." */
7 $FirstName = trim($FirstName);
8 $LastName = trim($LastName);
9 $Email = trim($Email);
10 $Comments = trim($Comments);
11 print "Your first name is $FirstName.<BR>n";
12 print "Your last name is $LastName.<BR>n";
13 print "Your Email address is $Email.<BR>n";
14 print "This is what you had to say:<BR>n $Comments<BR>n";
15 ?>
16 </BODY> • ' '
17 </HTML>

Для удаления лишних пробелов только в начале строки или только в ее конце ис
пользуются функции Itrirnf) и rtrim() соответственно. В остальном они при
меняются точно так же, как и функция trim ( ) :

$String = rtrim($String);
$String = ltrim($String);


Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: