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

Форум PHP

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

 

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

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

тема: Поясните код Гостевой
 
 автор: Artem S.   (23.07.2004 в 23:01)   письмо автору
 
 

Я только начил изучение php
Посмотрел ваш код гостевой, и мне непонятны следующие моменты, не могли бы вы их пояснить?
$count = $i;
$count1 = $count;

Зачем такая запись? не проще
$count=$count1=$i;

А вот след. я вообще непонил зачем это, не могли бы пояснить?
if (empty($start))
{
    $start = 0;
}
$start = intval($start);
if ($start < 0)
{
    $start = 0;
}

Заранее благодарен

   
 
 автор: cheops   (23.07.2004 в 23:28)   письмо автору
 
   для: Artem S.   (23.07.2004 в 23:01)
 

Да... мы тут немного перестраховались с intval... :)))
На странице 381, при построении гостевой книги на MySQL, рассмотрен обычно используемый в данном случае вариант.
<?php
// Если значение переменной $start равно пустой строке присваиваем ей значение 0
if(empty($start)) $start 0;
// Так же не допускается отрицательное значение для этой переменной
if($start 0$start 0;
?>

По поводу переменных
<?php
$count 
$count1 $i;
?>

Да эта запись короче и элегантнее, но это несколько сбивает начинающих, на которых в первую очередь ориентирована книга. Вообще, это дело стиля, который каждый выбирает себе сам, мне кажется такой подход небольшим отступлением от "хорошего стиля" в программировании: каждому действию - отдельную строку, но с другой стороны он позволяет сэкономить лишнюю строку, что тоже важно при создании программы - чем больше кода видно на одном экране, тем легче отлаживать приложение.

   
 
 автор: Artem S.   (24.07.2004 в 08:51)   письмо автору
 
   для: cheops   (23.07.2004 в 23:28)
 

Спасибо. Теперь все стал ясен практически весь код гостевой.
Но есть еще один вопрос. Можно ли заменить
<?php
if(empty($start)) $start 0;
if(
$start 0$start 0;
?>

На
<?
$start
=abs($start);
?>

   
 
 автор: cheops   (24.07.2004 в 09:33)   письмо автору
 
   для: Artem S.   (24.07.2004 в 08:51)
 

В данном случае можно, но код будет менее прозрачным. Первое условие предназначено для случая когда в строке запроса отсутсвует параметр start, например, посетитель набирает адрес www.mysite.ru/guest/index.php - в этом случае значение $start будет неустановлено и после
<?php
  $start 
abs($start);
?>

будет равно не 0, а пустой строке "" - здесь это не страшно, PHP автоматически приведёт тип к числовому значению (0), но при переводе гостевой книги на MySQL, когда переменная $start используется для формирования SQL-запроса это приведёт к ошибочной ситуации.

   
 
 автор: Artem S.   (24.07.2004 в 13:04)   письмо автору
 
   для: cheops   (24.07.2004 в 09:33)
 

Спасибо за разъяснение.

   
Rambler's Top100
вверх

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