Есть 2 страницы: например - kino.php и actor.php Есть БД, в ней 2 таблицы - фильмы и актеры Есть функция вывода информации с БД Код (PHP): function getInfo($kino, $actor){ //Если 1-й параметр равен NULL if(empty($kino)){ //Делаем запрос на выборку всех актеров $query = 'SELECT * FROM `actor`'; } //Если 2-й параметр равен NULL else{ //Делаем запрос на выборку всех фильмов $query = 'SELECT * FROM `kino`'; } $result = mysql_query($query); $array = array(); while($row = mysql_fetch_assoc($result)){ $array[] = $row; } //Возвращаем массив актеров, или массив фильмов return $array; } Если страница kino.php, то выводим информацию по фильмах Код (PHP): print_r(function getInfo('kino', NULL)); Если страница actor.php, то выводим информацию по актерах Код (PHP): print_r(function getInfo(NULL,'actor')); Вопрос: Можно ли так применять параметры к функции (NULL), если нет, то почему??? Если честно, то код работает, но что то мне подсказывает, что этот код не имеет права на жизнь?
всё так и интуиция правильно подсказывает применять можно, но это не корректно... можно же передать разные аргументы 'kino' и 'actor' в один и тот же запрос
спасибо за ответы) 2-й вопрос: Код (PHP): //Простоя функция для проверки: существуeт ли $var function getResult($var){ //Если существует if(isset($var)){ return true; } //Если нет else{ return false; } } //Проверка на странице, если не существует переменная $string if(getResult($string) == false){ echo 'Печалька:)'; } //Если существует переменная $string else{ echo 'Все ок'; } вопрос: проверять функцию на существование переменной вместо false на null, это одно то же???
3-й вопрос, и думаю последний) есть "ОДНА" функция вывода информации с БД, для примера - таблица (статьи), есть 3 страницы, мне нужно выводить статьи на каждой странице по разному, то есть сортировка разная при выборке, логично ли принимать в функцию параметр "сортировка", что бы знать на какой странице сортировать??? или это опять мой многоколесный велик?)
в данном случае - сортировка уже другой параметр влияющий на результат, а не название таблицы, и это будет правильно
ну спасибо тебе БОЛЬШОЕ) теперь душа моя спокойна) но все же, с возвратом, сравнением и применением false-true-null у меня большие проблемы(
в сравнивании типов - это абс. правильная практика, для этого и разработаны многие функции в php. Но, одна и таже функция всегда должна возвращать один тип данных, будь то true или false, array, int.... и т.д. Такие мелочи уменьшают работу как миниму в 2 раза и не приходиться делать лишние проверки, на то какого типа вернула функция результат
чтобы понять, просто нужно разделять разницу между ними... Что true-false - это логическое выражение, null - это пустое значение( не путать с нулем )....