Відмінності між версіями «7 Робота з рядками»

Матеріал з Wiki TNEU
Перейти до: навігація, пошук
 
(3 проміжні версії 2 користувачів не показані)
Рядок 1: Рядок 1:
Нижче буде приведений перелік основних рядкових функцій в РНР.
+
У мові PHP існує такий тип даних, як стрічковий (String). Він служить для того щоб ми могли працювати з рядками в PHP.  
 +
Для роботи із стрічковими(текстовими) змінними в PHP передбачений дуже багатий набір функцій, як, безсумнівно, полегшать для написання різних програм. Для більш наочного уявлення, що ж це все-таки таке «рядок в PHP», приклад використання стрічковоїзмінної:
  
Функція trim - видаляє пробіли з початку і кінця рядка. Її доречно використовувати наприклад для запобігання некоректного вводу пароля, чи логіну в поле авторизації, тобто користувач може випадково ввести пробіл, програма його врахує, як один з символів і видасть помилку, що користувача з таким логіном, чи паролем не існує. Щоб цього не сталось і використовується вище згадана функція, яка видаляє лишні пробіли.
+
<?php
 +
$a = 'Звичайна стрічкова змінна з текстом'; // Привласнимо $a текстове значення.  
 +
echo($a); // Виводимо значення змінної на екран.  
 +
?>
  
Наприклад:
+
Ось такий простенький скрипт, спочатку присвоює значення змінної $a текстове значення, а потім виводить це значення на екран.
 +
У цьому скрипті, вказано тип змінної. При присвоєнні змінній текстове значення її тип змінюється на текстовій тип даних автоматично.
 +
Існують наступні функції для роботи з текстовими даними, у попередньому прикладі було використано одну з них. Це функція echo(). Функція echo() служить для виведення значення однієї або декількох змінних на екран. Оператор echo() виводить не тільки текстові типи даних, а й інші.
 +
Синтаксис функції echo():
 +
echo (значення);
 +
або
 +
echo (значення 1, значення 2);
 +
Для того щоб дізнатися довжину рядка, або іншими словами кількість символів у рядку використовують функцію strlen().
 +
Синтаксис функції strlen ():
 +
strlen (стрічкова змінна);
 +
Приклад використання цієї функції:  
  
  <?
+
  <?php
  $name = trim ($name);
+
  $alphavit = 'АБВГДЕЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ';  
  $password = trim ($password);
+
// Задаємо текстове значення змінної.
  $email = trim ($email);
+
  $count = strlen($alphavit);  
  ?>
+
  // Рахуємо за допомогою strlen кількість символів в рядку.
 +
echo($count); // Виводимо результат
 +
  ?>  
  
В даному прикладі ми видалили лишні пробіли з форми в якій зазначені такі дані, як логін користувача, пароль і його електронна адреса.
+
Для того щоб вирізати частину рядка, використовується функція substr().  
А функція ltrim видаляє пробіли лише на початку рядка.
+
Синтаксис функції substr():
Рядкова функція print аналогічна оператору echo, тобто виводить відповідний рядок.
+
substr (стрічкова змінна, початок частині рядка, кількість символів);
Функція strlen рахує кількість символів в рядку. З її допомогою можна перевірити довжину рядка.
+
або
Наприклад давайте перевіримо за її допомогою правильність вводу e-mail адреси користувачем:
+
substr (стрічкова змінна, початок частині рядка);
 +
Якщо не вказувати кількість символів, які ви хочете вирізати з рядка, уривок буде вирізаний від зазначеного початку частині рядка до кінця рядка. Початок частини рядка потрібно відраховувати з нуля. Перший символ рядка завжди нульовий. Наприклад:
  
  <?
+
  <?php
  if (strlen($email) < 6)//якщо в рядку менше 6-ти символів
+
  $alphavit = 'АБВГДЕЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ';
  {
+
// Задаємо текстове значення змінної.
  echo "Ви невірно ввели email адресу!"; //виводиться слідуюче повідомлення
+
  $a = substr($alphavit,0,10);
  }
+
  // Вирізаємо перші 10 символів з рядка echo($a);
  ?>
+
  // Виводимо результат.
 +
  ?>  
  
З допомогою функції str_replace можна здійснити заміну одних символів іншими. Ось її синтаксис:
+
Для того,щоб відшукати позицію будь-якого символу в рядку, є функція strpos (). За допомогою неї можна відшукати позицію як одного символу, так і цілого відрізка символів.  
 +
Синтаксис функції strpos ():
 +
strpos (стрічкова змінна, потрібний символ або група символів);
 +
або
 +
strpos (стрічкова змінна, потрібний символ або група символів, позиція звідки починати пошук);
 +
Приклад:
  
str_replace ("що замінити", "чим замінити", $рядок);
+
  <?php
 
+
  $alphavit = 'АБВГДЕЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ';
Слідуючу функцію strcmp, яка призначена для порівняння рядків, можна застосовувати наприклад при ідентифікації пароля введеного користувачем в форму авторизації з паролем, що прописаний в БД в момент реєстрації цього користувача. Ось приклад:
+
// Задаємо текстове значення змінної.
 
+
  $a = strpos($alphavit,'Д'); // Знаходимо позицію букви Д в рядку.
  <?
+
  echo($a); // Виводимо результат
  if (strcmp ($newstr, $pass) == 0) // якщо рядки співпадають, то функція повертає значення "0"
+
  {
+
echo "Ви є зареєстрованим користувачем."; // тоді виводиться такий текст
+
}
+
else
+
{
+
  echo " Ви ввели невірний пароль."; // інакше при неспівпадінні рядків виводиться таке повідомлення
+
}
+
 
  ?>
 
  ?>
  
Функція strtolower - переводить символи рядка в нижній реєстр. Ось синтаксис:
+
 
+
strtolower($рядок);
+
 
+
А strtoupper - навпаки, тобто в верхній реєстр.
+
 
+
І остання функція про яку хочеться згадати в даній статті - це ucfirst. Вона переводить перший символ рядка в верхній реєстр. Її синтаксис доволі простий:
+
 
+
ucfirst($рядок);
+

Поточна версія на 01:04, 20 червня 2014

У мові PHP існує такий тип даних, як стрічковий (String). Він служить для того щоб ми могли працювати з рядками в PHP. Для роботи із стрічковими(текстовими) змінними в PHP передбачений дуже багатий набір функцій, як, безсумнівно, полегшать для написання різних програм. Для більш наочного уявлення, що ж це все-таки таке «рядок в PHP», приклад використання стрічковоїзмінної:

<?php 
$a = 'Звичайна стрічкова змінна з текстом'; // Привласнимо $a текстове значення. 
echo($a); // Виводимо значення змінної на екран. 
?> 

Ось такий простенький скрипт, спочатку присвоює значення змінної $a текстове значення, а потім виводить це значення на екран. У цьому скрипті, вказано тип змінної. При присвоєнні змінній текстове значення її тип змінюється на текстовій тип даних автоматично. Існують наступні функції для роботи з текстовими даними, у попередньому прикладі було використано одну з них. Це функція echo(). Функція echo() служить для виведення значення однієї або декількох змінних на екран. Оператор echo() виводить не тільки текстові типи даних, а й інші. Синтаксис функції echo():

echo (значення); 

або

echo (значення 1, значення 2); 

Для того щоб дізнатися довжину рядка, або іншими словами кількість символів у рядку використовують функцію strlen(). Синтаксис функції strlen ():

strlen (стрічкова змінна); 

Приклад використання цієї функції:

<?php 
$alphavit = 'АБВГДЕЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ'; 
// Задаємо текстове значення змінної. 
$count = strlen($alphavit); 
// Рахуємо за допомогою strlen кількість символів в рядку. 
echo($count); // Виводимо результат 
?> 

Для того щоб вирізати частину рядка, використовується функція substr(). Синтаксис функції substr():

substr (стрічкова змінна, початок частині рядка, кількість символів);

або

substr (стрічкова змінна, початок частині рядка); 

Якщо не вказувати кількість символів, які ви хочете вирізати з рядка, уривок буде вирізаний від зазначеного початку частині рядка до кінця рядка. Початок частини рядка потрібно відраховувати з нуля. Перший символ рядка завжди нульовий. Наприклад:

<?php 
$alphavit = 'АБВГДЕЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ'; 
// Задаємо текстове значення змінної.
$a = substr($alphavit,0,10); 
// Вирізаємо перші 10 символів з рядка echo($a); 
// Виводимо результат. 
?> 

Для того,щоб відшукати позицію будь-якого символу в рядку, є функція strpos (). За допомогою неї можна відшукати позицію як одного символу, так і цілого відрізка символів. Синтаксис функції strpos ():

strpos (стрічкова змінна, потрібний символ або група символів); 

або

strpos (стрічкова змінна, потрібний символ або група символів, позиція звідки починати пошук); 

Приклад:

<?php 
$alphavit = 'АБВГДЕЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ'; 
// Задаємо текстове значення змінної.
$a = strpos($alphavit,'Д'); // Знаходимо позицію букви Д в рядку. 
echo($a); // Виводимо результат 
?>

Особисті інструменти
Простори назв

Варіанти
Дії
Навігація
Інструменти