Имя: Пароль:
IT
Веб-мастеринг
Неправильно работает if в php
0 megabax
 
23.02.13
11:55
Вот такой код:
           echo "<h1>DDDD: $partner_id,$custom_outercode</h1>";
           if($custom_outercode!=0) {
               $customers=new EP_Customers($this->encoding);
               $customers->db=$this->db;            
               $customers_row=$customers->GetPartner($mysqli,$custom_outercode);
               echo "<h1>WWW: $partner_id,$custom_outercode,$customers_row</h1>";
           } else {
               echo "<h1>XXX: $partner_id,$custom_outercode,$customers_row</h1>";
               $customers_row=null;
           }
выдает
DDDD: 1,shop
XXX: 1,shop,
подскажите плз, как заставить PHP работать правильно????
по логике, если $custom_outercode у меня равен "shop", то он ну никак не равен нулю, а почему же выполняется ветвь где он равен нулю?????
1 sda553
 
23.02.13
12:40
В php такой есть прикол, что строка при преобразовании в число преобразуется как 0 в случае если строка не начинается с числа

http://www.php.su/learnphp/datatypes/?mn#strtoint

"Значение определяется по начальной части строки. Если строка начинается с верного числового значения, будет использовано это значение. Иначе значением будет 0 (ноль)."
2 Fragster
 
гуру
23.02.13
12:43
==
3 Fragster
 
гуру
23.02.13
12:43
а, сморозил.втору срочно перестать экономить на пробелах
4 Fragster
 
гуру
23.02.13
12:44
*. А
5 Asmody
 
23.02.13
15:53
Можно было ограничится  if($custom_outercode)...
0 под if'ом трактуется как Ложь
6 8vC1
 
23.02.13
15:58
!= замени на !==
7 8vC1
 
23.02.13
16:04
if(isset($custom_outercode)
8 orefkov
 
23.02.13
16:08
"Смешались в кучу строки, числа"
Php такой пхп.
9 8vC1
 
23.02.13
16:09
(8) Да. Сложный язык, и с каждым годом все обрастает новыми фишками. А пыхапышникам платят с каждым годом все меньше и меньше.
10 Fragster
 
гуру
23.02.13
16:32
а я вот написал генерато wsdl для функций на php
11 Fragster
 
гуру
23.02.13
16:33
совместимый с 1сным пониманием стандарта
12 sda553
 
23.02.13
17:41
(9) Когда это php сложным то стать успел? Детский лепет, а не язык
13 8vC1
 
23.02.13
18:13
(12) Да уж посложней 1С и поперспективней, только не платят достойно за знание пиэйчпи в России.
14 8vC1
 
23.02.13
18:15
(13) Но надо учить Java EE. После 1С это проще чем на С++  переходить.
15 8vC1
 
23.02.13
18:16
Предвижу я скорое загибание 1С.
16 Маленький Вопросик
 
23.02.13
18:18
(13) потому, что много быдлокодеров - сайтодельцев))) сам по себе пхп не сильно нужен... западные друзья уже написали на нем все что угодно )))
17 8vC1
 
23.02.13
18:22
(16) Вот поэтому Ява ЕЕ, и такие перспективы откроются, что будет жалко потраченного времени на 1С. :)
18 Маленький Вопросик
 
23.02.13
18:24
(17) а что ява ее??? холодильники хочешь программировать???
19 Маленький Вопросик
 
23.02.13
18:25
по мне так python поперспективнее будет, чем пхп.
на питоне могу скрипты для сервера писать с файловой системой работать
20 8vC1
 
23.02.13
18:28
(18) Ты че ? Сейчас на Яве работает много прог разных, а в корпоративном секторе сейчас просто бум на ней.
Питон тоже хорошо, но он для сисадминства больше, чем для веба.
21 Маленький Вопросик
 
23.02.13
18:29
я могу сказать так - каждый язык создан для чего-то определенного...

я работаю в области учета и торговли - естественно я работаю на 1с...
22 8vC1
 
23.02.13
18:34
Так вот переходи на Java :)  А БП все равно скоро в облаках будет, и заодно прикроют лавочку ее свободного попила, оставят только возможность подключения внешних обработок и печатных форм.
23 Маленький Вопросик
 
23.02.13
18:41
(22) после вас)))
24 kokamoonga
 
23.02.13
21:34
(20) >>>Питон тоже хорошо, но он для сисадминства больше, чем для веба.

вы это серьезно?