Welcome to PHPClub
Переходим на PHP 5.3.3! Ищем хорошего PHP-разработчика Москва,
офис ~90-150К
Боишься нашего дизайна?
поиск:
   
 Начало | Настройки | Расширенный поиск | РегистрацияПосмотреть новые сообщения 
  
PHP Club форумы: > Вопросы по программированию на РНР > баг или фича?
 

Автор
Тема ОТВЕТИТЬ
Colobon
Новичок

На форуме с: Aug 2007
Cообщений: 5
Город:
баг или фича?

возьмем к примеру вот такой скрипт

function func($id){
    return 
$id;
}

if(
$id1=func(100) && $id2=func(200)){
    print 
$id1."<br />";
    print 
$id2."<br />";
}

на мой взгляд логично ожидать, что он вернет
 

100
200


а на самом деле получается
 

1
200


так вот и вопрос - это че такое? php 5.1.6

Old Post 30.08.07 07:29 URL сообщения | инфо об авторе | жалоба | IP: Записан | редактировать | ОТВЕТИТЬ и ЦИТИРОВАТЬ
God
Продвинутый новичок

На форуме с: Mar 2006
Cообщений: 114
Город:

Получаем, что $id1 получит значение, равное 100 && 200
Отредактировано God 30.08.07 в 07:36

Old Post 30.08.07 07:33 URL сообщения | инфо об авторе | жалоба | IP: Записан | редактировать | ОТВЕТИТЬ и ЦИТИРОВАТЬ
bedladen
Новичок

На форуме с: Mar 2007
Cообщений: 28
Город:

а теперь подумай почему вот так выведет правильный результат:
if(($id1=func(100)) && ($id2=func(200))){
print $id1."<br />";
print $id2."<br />";

Old Post 30.08.07 07:34 URL сообщения | инфо об авторе | жалоба | IP: Записан | редактировать | ОТВЕТИТЬ и ЦИТИРОВАТЬ
Colobon
Новичок

На форуме с: Aug 2007
Cообщений: 5
Город:

все понял, "and" нада ставить, спасибо

Old Post 30.08.07 07:35 URL сообщения | инфо об авторе | жалоба | IP: Записан | редактировать | ОТВЕТИТЬ и ЦИТИРОВАТЬ
God
Продвинутый новичок

На форуме с: Mar 2006
Cообщений: 114
Город:

Ты не правильно понял, ставить нужно скобки

Old Post 30.08.07 07:37 URL сообщения | инфо об авторе | жалоба | IP: Записан | редактировать | ОТВЕТИТЬ и ЦИТИРОВАТЬ
Colobon
Новичок

На форуме с: Aug 2007
Cообщений: 5
Город:

и это я понял. без скобок фактически получается так:

if($id1=(func(100) && $id2=func(200))){


просто в данном случае можно и and поставить

Old Post 30.08.07 07:45 URL сообщения | инфо об авторе | жалоба | IP: Записан | редактировать | ОТВЕТИТЬ и ЦИТИРОВАТЬ
SiMM
Старожил PHPCluba

На форуме с: Jan 2004
Cообщений: 6393
Город: Чебоксары, Россия

Неужели было сложно прежде чем задать вопрос заглянуть в мануал?
language.operators#language.operators.precedence

Old Post 30.08.07 14:45 URL сообщения | инфо об авторе | жалоба | IP: Записан | редактировать | ОТВЕТИТЬ и ЦИТИРОВАТЬ
kostya.sys
Новичок

На форуме с: Oct 2005
Cообщений: 30
Город:

жесть какая

Old Post 30.08.07 14:49 URL сообщения | инфо об авторе | жалоба | IP: Записан | редактировать | ОТВЕТИТЬ и ЦИТИРОВАТЬ
Время GMT. Текущее время 22:06. Подписаться на Тему | Версия для Печати
 

PHP Club форумы: > Вопросы по программированию на РНР > баг или фича?
 
Оценить:
 
 
 
 

 © 1997-2010 PHPClubTeam      

Powered by vBulletin Copyright © 2000-2010 Jelsoft Enterprises Limited.