Запис строкових виразів лапки

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

Курепін Руслан

З великим подивом дізнався, що багато хто (іноді навіть не початківці) PHP-програмісти не знайомі з різницею між обробкою даних в лапках (") і апострофа ('). А між тим, різниця дуже важлива, хоч і проста за своєю суттю - в лапках дані "Парс", а в апострофа - ні.

Простіше кажучи, рядки в подвійних лапках (") PHP буде аналізувати на наявність спеціальних символів і змінних, а в одинарних лапках (апострофа) майже ніяких змін проводитися не буде.

Загалом, не треба бути семи п'ядей у ​​чолі, щоб зробити висновок - рядки в одинарних лапках обробляються швидше, ніж у подвійних. І тести показують, що так воно і є.

Детальніше про рядках можна прочитати на сторінці керівництва по PHP: http://www.php.net/manual/en/language.types.string.php.

Мабуть, вийшла найкоротша PHP-замітка. Давайте доповнимо її деякими прикладами запису рядків у PHP.

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

$ Query = "select $ field from $ table where $ field = '$ data' limit $ n";

Це традиційна запис, яку можна побачити і в підручниках з PHP і в офіційній документації. Та й я в своєму курсі часто використовував саме такий запис строкових даних.

Дійсно, для розуміння подібна форма запису найбільш зручна. Особливо зручна вона новачкам, ще не навчилися нальоту "ковтати" конкатенацію підрядків і змінних. Між тим, це самаму "важка" форма запису. PHP довше інших буде інтерпретувати цей рядок.

Наступним кроком назустріч PHP можна назвати винесенням імен змінних з рядка:

$ Query = "select". $ Field. "From". $ Table. "Where". $ Field ."='".$ data. "'Limit". $ N;

Це прискорить обробку рядка, можете мені повірити.

Що можна зробити ще? Потрібно поміняти подвійні лапки на одинарні апострофи, щоб PHP не намагався розбирати рядка в пошуках змінних і спецсимволів:

$ Query = 'select'. $ Field. ' from '. $ table.' where '. $ field .'=''.$ data.''limit'. $ n;

Ось ми і привели рядок до "правильного" виду. У такому вигляді рядок буде зрозуміла інтерпретатором швидко і без різночитань.

Наостанок спробую вигадати забавний приклад комбінування одинарних і подвійних лапок:

echo 'Змінна $ name містить ім'я''. $ name.''.
'. "N".' А змінна $ id містить цифру '. $ Id.', Яка в свою чергу допоможе вибрати з масиву $ select [] значення:
'. "N".' Name '. "T".' Age '. "T".' Town та інші ...'." n ".'.';

Результат роботи цього рядка виглядає так:

-----

Змінна $ name містить ім'я''.

А змінна $ id містить цифру, яка в свою чергу допоможе вибрати з масиву $ select [] значення:

name age town

та інші ... .

-----

Але і це ще не все. Якщо мова йде про html-файлі, то останній приклад можна записати, наприклад, як:

-----

Змінна $ name містить ім'я''.

А змінна $ id містить цифру, яка в свою чергу допоможе вибрати з масиву $ select [] значення:

name age town

та інші ...

-----

Результат буде таким же, тільки виконається скрипт набагато швидше. Можна запропонувати і ще кілька варіантів запису цього виразу, але я зав'язую з цим захоплюючим заняттям.

06.03.03

PS Не треба думати, що є універсальні форми запису рядкових виразів. Навіть від версії до версії самого PHP відбуваються всілякі зміни, що впливають на швидкість обробки тих чи інших фрагментів, що вже там говорити ... Правди заради варто помітити, що сьогоднішня швидкість комп'ютерів у більшості випадків дозволяє знехтувати оптимізацією запису строкових виразів, але і зловживати зручністю на шкоду продуктивності теж не слід. Думайте.

Увага! Передрук цієї статті або її частини без узгодження з автором. Якщо ви хочете мати цю статтю на своєму сайті або видати в друкованому вигляді, зв'яжіться з автором.

Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Доповідь
7.2кб. | скачати


Схожі роботи:
Виконання арифметичних дій і строкових операцій
Інтегрування ірраціональних виразів
Програма обчислення виразів
Аналіз та обчислення дужкових виразів
Оптимальні програми обчислення виразів
Чистота російської мови Значення слів і виразів
Тотожні перетворення виразів і методика навчання учнів їх виконання
Інтегрування виразів що містять тригонометричні функції Приклади первісних що не є елементарн
Однопроходныйдвухпроходный транслятор з мови математичних виразів на мову дерев виведення
© Усі права захищені
написати до нас