Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Смысл кавычек
 
 автор: gobseck   (20.06.2008 в 21:21)   письмо автору
 
 

Собственно, прошу просвятить непросвещенного насчет кавычек: в английской (а в какой еще работать?) расскладке есть одинарная ковычка и двойная (на месте русской буквы "э"). Есть еще какая-то кавычка - та что возле буквы "ё", но ее смысл я так и не понял.
Вопрос состоит в следующем: как вы в практике используете эти виды кавычек.
А то на разных сайтах-справочниках используются они по-разному, одни рекомендуют одно, другие - другое. Вот и интересно, что говорит всеобщая практика "форумчан".

   
 
 автор: yuk   (20.06.2008 в 23:24)   письмо автору
 
   для: gobseck   (20.06.2008 в 21:21)
 

Одинарные и двойные кавычки (которые на э) хороши хотя бы тем, что их можно использовать внутри друг друга.
Например
echo '<a href="index.php" id="link1">INDEX</a>';
или наоборот:
echo "<a href='index.php' id='link1'>INDEX</a>";

Плюс в двойных кавычках можно использовать переменные
$name='vasya';
$name2='Petrov';
echo "Меня зовут $name $name2";

В одинарных кавычках пришлось бы написать так:
echo 'Меня зовут '.$name.' '.$name2;


Соответственно, текст в одинарных кавычках выполняется быстрее, так как компилятор туда "не заглядывает". А двойные кавычки разбираются компилятором на наличие переменных и всяких управляющих конструкций - \n, \r, \t и тп.

Что касается кавычки, которая над ё - ее используют в SQL запросах для выделения имен таблиц и полей
$query="SELECT `name` FROM `tbl` WHERE `name`='vasya'";

Тут она, правда, не всегда обязательна. В основном она нужна, когда имя поля или таблицы совпадает с какой-нибудь ф-цией или зарезервированным словом SQL.
$query="SELECT `from` FROM `now` WHERE `id` = '2'";

Этот вариант выдаст ошибку:
$query="SELECT from FROM now WHERE `id` = '2'";

Вот, собственно, чем пользуюсь я.

   
 
 автор: cheops   (22.06.2008 в 10:41)   письмо автору
 
   для: gobseck   (20.06.2008 в 21:21)
 

В языках программирования обычно поддерживают два варианта кавычек: одинарные и двойные, для того чтобы при необходимости применения одинарных кавычек в тексте использовать для обрамления двойные:
<?php 
echo "I don't work..."
?>

А при необходимости двойных - использовать для обрамления одинарные:
<?php 
echo 'Проект "Бездна" самый дорогой проект в истории....'
?> 

В PHP функциональность кавычек была несколько расширена (вернее заимствована из Perl): если поместить в двойные кавычки переменную - её значение будет подставлено в текст:
<?php 
$str 
2345
echo 
"Значение перемнной \$str - $str"
// Результат: Значение перемнной $str - 2345 
?>

Поэтому, для того вывести символ $ - его необходимо экранировать слешем. Кроме этого, применяются так называемы escape-последовательности
\n - перевод строки
\t - табуляция
\v - горизонтальная табуляция
\\ - слеш
Одинарные кавычки интерпретируются другим способом - в них не происходит интерпретация переменных.
<?php 
$str 
2345
echo 
'Значение перемнной \$str - $str'
// Результат: Значение перемнной $str - $str 
?>

Обратные кавычки ` предназначены для выполнения команд операционной системы (если это разрешено в конфигурационном файле php.ini)
<?php
  $str 
= `ls -l`;
?>

http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=130

   
 
 автор: yuk   (22.06.2008 в 11:36)   письмо автору
 
   для: cheops   (22.06.2008 в 10:41)
 

>>Обратные кавычки ` предназначены для выполнения команд операционной системы (если это разрешено в конфигурационном файле php.ini)

А на windows системах это тоже работает?

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования