Реферат по предмету "Информатика, программирование"


Запись строковых выражений, кавычки

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


С большим удивлением узнал, что многие (иногда даже не начинающие) 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.'\'.<br>'."\n".'А переменная $id содержит цифру '.$id.', которая в свою очередь поможет выбрать из массива $select[] значения:<br>'."\n".'<pre>name'."\t".'age'."\t".'town</pre> и другие...'."\n".'.';


Результат работы этой строки выглядит так:


-----


Переменная $name содержит имя ''.


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


name age town


идругие... .


-----


Но и это еще не все. Если речь идет о html-файле, то последний пример можно записать, например, как:


-----


<html><body>


Переменная $name содержит имя '<?=$name?>'.<br>


А переменная $id содержит цифру <?=$id?>, которая в свою очередь поможет выбрать из массива $select[] значения:<br>


<pre>


name age town


</pre>


и другие...<br>


</body></html>


-----


Результат будет таким же, только выполнится скрипт гораздо быстрее. Можно предложить и еще несколько вариантов записи этого выражения, но я завязываю с этим увлекательным занятием.


06.03.03


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


Внимание! Запрещается перепечатка данной статьи или ее части без согласования с автором. Если вы хотите разместить эту статью на своем сайте или издать в печатном виде, свяжитесь с автором.



Не сдавайте скачаную работу преподавателю!
Данный реферат Вы можете использовать для подготовки курсовых проектов.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.

Сейчас смотрят :

Реферат Філософські погляди Григорія Сковороди та ідея чистої ("сродної") праці
Реферат Приёмник радиолокационной станции диапазона 800 МГц
Реферат Складання радіоелектронних схем та користування вимірювальними приладами
Реферат Проблема преемственности российской правовой политики
Реферат Проект малого предприятия по пошиву детской одежды
Реферат «Путешествие». Достопримечательности Лондона и Москвы. Структура could not
Реферат Анализ стихотворения А.А. Блока "О! Весна без конца и без краю!"
Реферат Толерантность и полисубъектная социальность процесса формирования социального самосознания шотландского народа.
Реферат Cathedral Trafalgar Square. 08. 02. 11 4 А. Англ. Яз. Домашнее чтение урок
Реферат Речь повествователя как основное средство его характеристики в романе Т.Н. Толстой "Кысь"
Реферат Абрахам А Санта Клара
Реферат Доисторическое население Восточной Европы и его культура
Реферат Volleyball Essay Research Paper VolleyballVolleyball is an
Реферат Шпаргалки по экологическому мониторингу
Реферат Unemployment In Canada Essay Research Paper Unemployment