Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: данные из функций

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Вездеход
Отправлено: 14 Июля, 2008 - 11:06:00
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 820
Дата рег-ции: Апр. 2008  
Откуда: Россия


Помог: 0 раз(а)




народ
вопрос по функциям практически. =)

есть переменна например $xxx.
данные в нее записываются из функции funct
а сама функция берет данные эти из базы данных.

так вот вопрос.
если я просто напишу $xxx=funct();
но в дальнейшем не буду нигде использовать эту переменную - будет ли функция совершать запрос к базе?

если будет - то как сделать так, чтобы переменная тогда не получала данные?

например если я напишу:
PHP:
скопировать код в буфер обмена
  1. if($page=="qwerty") {$xxx=funct();)
  2. function funct() { ... }


будет ли так совершаться запрос к базе?

(Отредактировано автором: 14 Июля, 2008 - 11:06:39)



-----
о великий nl2br!
Хочешь невероятных ощущений? Юзай блокнот! Блокнот - чудеса сбываются!
Чем меньше вы знаете PHP - тем ценнее мои знания!
 
 Top
kamikadze
Отправлено: 14 Июля, 2008 - 12:43:54
Post Id



Склонен к самоубийству


Покинул форум
Сообщений всего: 391
Дата рег-ции: Янв. 2007  


Помог: 0 раз(а)




Улыбка Давайте разберемся, а будет происходить запрос к базе, когда мы просто обьявляем функцию? Подмигивание
 
 Top
valenok Модератор
Отправлено: 14 Июля, 2008 - 20:43:10
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




Во первых нужно сразу проверить если не знаете
а вообще:


$xxx=funct();
Здесь две операции.
Во первых происходит вызов функции (она выполняется)
2. Результат выполнения присваивается переменной.


-----
Truly yours, Sasha.
 
My status
 Top
Вездеход
Отправлено: 15 Июля, 2008 - 10:25:58
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 820
Дата рег-ции: Апр. 2008  
Откуда: Россия


Помог: 0 раз(а)




а как мне быть не подскажите?
Огорчение


-----
о великий nl2br!
Хочешь невероятных ощущений? Юзай блокнот! Блокнот - чудеса сбываются!
Чем меньше вы знаете PHP - тем ценнее мои знания!
 
 Top
kamikadze
Отправлено: 15 Июля, 2008 - 12:21:37
Post Id



Склонен к самоубийству


Покинул форум
Сообщений всего: 391
Дата рег-ции: Янв. 2007  


Помог: 0 раз(а)




Изложите задачу, что вы хотите, что у вас уже есть. Чем сможем - поможем
 
 Top
valenok Модератор
Отправлено: 15 Июля, 2008 - 15:56:18
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




Вы сначала ответьте будет ли выполняться запрос к базе если код будет такой как вы ранее написали.
Если интуитивно не ясно, то можно проверить.


-----
Truly yours, Sasha.
 
My status
 Top
Вездеход
Отправлено: 16 Июля, 2008 - 13:09:41
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 820
Дата рег-ции: Апр. 2008  
Откуда: Россия


Помог: 0 раз(а)




как я понял - если написать так: $xxx=funct();
то будет запрос.
а вот как избежать я все равно не понимаю (


-----
о великий nl2br!
Хочешь невероятных ощущений? Юзай блокнот! Блокнот - чудеса сбываются!
Чем меньше вы знаете PHP - тем ценнее мои знания!
 
 Top
valenok Модератор
Отправлено: 16 Июля, 2008 - 23:37:36
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




Избежать очень просто .. так не писать .....
Только перед тем как спросите "а как писать" вы определитесь что вам надо
и что должно быть в переменной ххх


-----
Truly yours, Sasha.
 
My status
 Top
Вездеход
Отправлено: 18 Июля, 2008 - 07:43:11
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 820
Дата рег-ции: Апр. 2008  
Откуда: Россия


Помог: 0 раз(а)




данные должны находиться в переменной $xxx для определенных страниц. а так как эта переменная находится в файле, который подгружают все страницы - то он естессно будет как я понел выполнять запрос всеже (так как в функции идет запрос к базе).
мне что нужно. мне надо сделать ограничение на формирование данных для это переменной.
т.е. если она нужна - загружаем инфу с БД.
если нет - оставляем пустой.

лан черт с ней. буду прописывать ее в страницах а не как щас в одном...


-----
о великий nl2br!
Хочешь невероятных ощущений? Юзай блокнот! Блокнот - чудеса сбываются!
Чем меньше вы знаете PHP - тем ценнее мои знания!
 
 Top
valenok Модератор
Отправлено: 18 Июля, 2008 - 12:12:09
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




Вы попробуйте прочитать свой впрос кому то вслух, и если у него глаза вылезут на лоб,
то и мы скорее всего удивимся.
Я ничего не понял.

Нужно взывать функцию - вызывай, не нужно - не вызывай.


-----
Truly yours, Sasha.
 
My status
 Top
SergeantPEPPER
Отправлено: 18 Июля, 2008 - 12:19:33
Post Id



Частый гость


Покинул форум
Сообщений всего: 245
Дата рег-ции: Сент. 2007  
Откуда: Казань


Помог: 0 раз(а)




А в чем тут вообще вопрос то?

PHP:
скопировать код в буфер обмена
  1. if($page=="qwerty") {$xxx=funct();)

Вот это будет нормально работать, т.е. запрос будет выполняться ТОЛЬКО если условие истинно.
 
 Top
Вездеход
Отправлено: 20 Июля, 2008 - 22:04:12
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 820
Дата рег-ции: Апр. 2008  
Откуда: Россия


Помог: 0 раз(а)




SergeantPEPPER пишет:
А в чем тут вообще вопрос то?

PHP:
скопировать код в буфер обмена
  1. if($page=="qwerty") {$xxx=funct();)

Вот это будет нормально работать, т.е. запрос будет выполняться ТОЛЬКО если условие истинно.


вот мне и надо было чтобы профи сказали - правельно ли я думал или нет.
сенкс


-----
о великий nl2br!
Хочешь невероятных ощущений? Юзай блокнот! Блокнот - чудеса сбываются!
Чем меньше вы знаете PHP - тем ценнее мои знания!
 
 Top
kamikadze
Отправлено: 21 Июля, 2008 - 00:49:24
Post Id



Склонен к самоубийству


Покинул форум
Сообщений всего: 391
Дата рег-ции: Янв. 2007  


Помог: 0 раз(а)




Да, запрос выполнится если выполнится условие
 
 Top
stimul
Отправлено: 21 Июля, 2008 - 11:29:25
Post Id


Новичок


Покинул форум
Сообщений всего: 16
Дата рег-ции: Июль 2008  


Помог: 0 раз(а)




Здесь нужны дополнительные проверки в условиях. И взависимости от выполнения условий выполнять или не выполнять вашу функцию. Элементарно!
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB