Здравствуйте. Что означает такой вызов функции, а точнее наличие амперсанда в нем: $app = &JFactory::getApplication(); Что это дает?
Пробуй без амперсанда, разницы не должно быть, если там объект возвращается методом. Скорее всего он для для того, чтобы метод возвращал один и тот же объект, а не копию каждый раз. Такое было еще в пхп 4. Потому, чтобы явно указать, что тебе не нужно копирования объекта - ставили амперсанд, тогда объект возвращался по ссылке, а не по значению. В пхп 5 указывать амперсанд не нужно, так как объекты и так всегда передаются по ссылке.
<? session_register('view1count'); session_register('view2count'); session_register('view3count'); session_register('view4count'); ?> <? echo " <html><head><teatle>Счетчик посещений web-страниц<br></teatle></head></body>"; if (isset($_GET['whichpage'])) { echo"<b>В данный момент вы просматриваете страницу $_GET[whichpage].</b><br><br>\n"; //$_SESSION["view".$_GET['whichpage']."count"]++; } for ($i=1; $i<=4; $i++) { if (isset($_GET['whichpage'])==$i) { echo "<b><a href=\"sessions.php?".session_id()."&whichpage=$i\"> Страница $i</a></b>"; } else { echo "<a href=\"session.php?".session_id()."&whichpage=$i\">Страница $i</a>"; } if (!isset($_SESSION["view".$i."count"])) $_SESSION["view".$i."count"]=0; echo ", которую вы смотрели".$_SESSION["view".$i."count"]." раз.<br>\n"; } echo "\n\n<br><br>\n\n"; echo "</body></html>"; Здравствуйте люди добрые, подскажите пжлста чайнику: 1. как понять if (isset($_GET['whichpage'])==$i) , точнее как можно сравнивать whichpage с целочисленным значением? Где переменной whichpage присваивается целочисленное значение? 2 .Как в этом коде понимать запись "<b><a href=\"sessions.php?".session_id()."&whichpage=$i\"> ,точнее как понять &whichpage=$i . что означает данный амперсанд &
Код (PHP): if (isset($_GET['whichpage'])==$i) Бессмыслица какая-то. Тут результат функции isset() сравнивается с числом. Результат if() на каждой итерации будет одинаковый. Наверно, там должно было быть Код (PHP): if ($_GET['whichpage']==$i) Переменным $_GET значения присваиваются перед запуском скрипта. Это данные из запроса, которые отправил браузер. & в строке адреса отделяет несколько переменных, передаваемых браузером скрипту.
Вы правы, код работает и без isset, но почему тогда не выбивало ошибку, когда сравнивало булево значение с обычным числом ? p.s. спасибо за ответ.
Доброго времени суток тебе. 1. Читай про строго и нестрого типизированные языки 2. Читай про приведение типов P.S. Больше такие вопросы не спрашивай
Есть даже табличка что он считает тру или фалс в зависимости от обстоятельств при одном и том же значении.