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


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

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


С большим удивлением узнал, что многие (иногда даже не начинающие) 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 мильонов к студенческой карме :

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

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

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

Реферат Джироламо Савонарола как политический деятель Флоренции
Реферат Загальна характеристика прибутку як обєкта оподаткування
Реферат The Unfinished Dream Essay Research Paper The
Реферат Неспецифические ("универсальные") элементы теории экстремального состояния сложных биологических систем
Реферат Government Spending 2
Реферат Необходимая оборона Её значение
Реферат Планирование аудиторской проверки
Реферат Смута от политики до религии Развитие образования и образованности книгопечатание
Реферат Единый сельскохозяйственный налог 5
Реферат Princess Diana Essay Research Paper
Реферат Правовой режим использования и охраны вод
Реферат Магниторазведка
Реферат [Об истории психологической мысли, арт-терапии и формировании психологической готовности будущего учителя]. // Народное образование. 2004. N с
Реферат Этапы создания веб-приложения. Основы РНР и MySQL
Реферат «динамика функционального состояния почек у больных ишемической болезнью сердца и хронической сердечной недостаточностью различных функциональных классов» 14. 00. 06- кардиология 14. 00. 15- патологическая анатомия