Капец! Изначально был задан вопрос: "Что означает символ & в php?" Ответов ... (имхо читать и понимать суть вопроса, тут не многие умеют).
Ответ: & (символ) -> амперсанд (описание):
1. в Языках Си, С++, Java и других, символ «&» применяется для обозначения нескольких операторов:
1.1 для получения указателя переменной, унарный оператор, «&» должен предшествовать идентификатору (имени) переменной;
1.2 оператор «&» обозначает логическое И;
1.3 оператор «&&» обозначает условное логическое И (проверка истинности последующего выражения только при условии истинности предшествующего).
2. в CGI оператором «&» разделяются аргументы в строке запроса.
3. в Бейсике символ &, стоящий сразу после имени переменной, означает тип переменной «длинное целое», а сочетание символов &H означает, что число записано в шестнадцатеричной системе счисления, а в Visual Basic, кроме того, с помощью операции & происходит конкатенация (объединение) строк.
4. в XML (в т. ч. HTML) конструкция вида &#xxxx; (где xxxx — число) позволяет вывести символ с кодом XXXX из юникод-пространства.
5. в большинстве командных интерпретаторов unix-подобных ОС команда, завершенная амперсандом, будет выполняться в "фоновом режиме".
Пример: Обработка формы.
Рассмотрим функцию
process_form() обработки формы после ввода ответов пользователем.
Код:
<?php
function process_form() {
global $name;
global $cheese;
global $times;
if ($cheese == 'brie') { $cheese_message = 'I love brie.'; }
elseif ($cheese == 'cheddar') { $cheese_message = 'Cheddar is awesome!'; }
else { $cheese_message = 'Fresh mozzarella is divine.'; }
$favorite_times = count($times);
if ($favorite_times <= 1) {
$times_message = 'You should eat cheese more often.';
} elseif ($favorite_times > 1 && $favorite_times < 4) {
$times_message = 'Those are good times to eat cheese.';
} else {
$times_message = 'You are eating too much cheese.';
}
echo "Hello $name.";
echo "$cheese_message $times_message";
}
?>
Здесь мы считываем глобальные значения переменных, включенных в форму. Затем мы смотрим, какой сорт сыра выбрал пользователь и в соответствии с этим формируем начало выводимого на страницу текста. Далее используется функция
count() для того, чтобы подсчитать, сколько раз в день ест сыр человек, ответивший на наши вопросы. А при анализе значений переменной
$favorite_times мы воспользовались операциями сравнения "меньше чем" и "больше чем". Знаки
&& в условном операторе "
$favorite_times > 1 && $favorite_times < 4" означают логическую операцию "И" ("and"). То есть
$favorite_times должно одновременно быть больше 1 и меньше 4 для того, чтобы условие было выполнено. Ну, и наконец, выводим введенное человеком имя и наше сообщение для него (нее).