Вопрос: Ему что вообще все равно? И как быть?
ИМХО ещё одно доказательство того что php для говнокодеров и для cms-соводил
Свернутый текст
<?php
interface Basic {
function param_one();
function param_two();
function param_three();
function param_foo();
function param_five();
}
class Abricos implements Basic {
function __construct($param)
{
$this->param = $param;
$this->flag = true;
}
public function param_one()
{
if($this->flag = 'true')
{
echo $this->param;
return TRUE;
}
}
public function param_two()
{
if($this->flag = true)
{
echo $this->param;
return TRUE;
}
}
public function param_three()
{
if($this->flag == true)
{
echo $this->param;
return TRUE;
}
}
public function param_foo()
{
if($this->flag === true)
{
echo $this->param;
return true;
}
}
public function param_five()
{
if($this->flag == 'true')
{
echo $this->param;
return true;
}
}
}
$joh = new Abricos(5);
$joh->param_one();
$joh->param_two();
$joh->param_three();
$joh->param_foo();
$joh->param_five();
?>
Спустя 5 минут, 13 секунд (28.02.2012 - 16:47) inpost написал(а):
Ну у кривых программистов всё криво получается. Языка не знаешь, полез в дебри фреймворков, сам толком на cms не работал, а именно CMS, почему-то и поливаешь грязью. Сам ничего в жизни толкового не ПХП делать не пробовал, но при этом он плохой... за одни только рассуждения такие БОЛЬШОЙ И ЖИРНЫЙ МИНУС!
Спустя 2 минуты, 28 секунд (28.02.2012 - 16:49) TMake написал(а):
johniek_comp
а что тебя именно не устраивает?
а что тебя именно не устраивает?
Спустя 6 минут, 22 секунды (28.02.2012 - 16:56) inpost написал(а):
Написал именно тот код, который и выполнился успешно.
Но эти записи в методе:
if($this->flag = 'true') - WTF?
Ты не знаешь разницы между true\'true' , и =, == ???
НЕ ЗНАЕШЬ ТАКОЙ БАНАЛЬЩИНЫ, а уже полез в ООП с наследованием и интерфейсами...
Но эти записи в методе:
if($this->flag = 'true') - WTF?
Ты не знаешь разницы между true\'true' , и =, == ???
НЕ ЗНАЕШЬ ТАКОЙ БАНАЛЬЩИНЫ, а уже полез в ООП с наследованием и интерфейсами...
![smile.gif](http://phpforum.ru/html/emoticons/smile.gif)
Спустя 3 минуты, 13 секунд (28.02.2012 - 16:59) Invis1ble написал(а):
Цитата |
ИМХО ещё одно доказательство того что php для говнокодеров |
плохому
Спустя 2 минуты, 5 секунд (28.02.2012 - 17:01) inpost написал(а):
"ИМХО ещё одно доказательство того что php для говнокодеров"
Я подправлю твою цитату:
"ИМХО ещё одно доказательство того что ты тупо ничего не знаешь"
Я подправлю твою цитату:
"ИМХО ещё одно доказательство того что ты тупо ничего не знаешь"
![smile.gif](http://phpforum.ru/html/emoticons/smile.gif)
Спустя 3 минуты, 43 секунды (28.02.2012 - 17:05) johniek_comp написал(а):
inpost
Ну ладно,
true false зарезервировавшие слова в языке(да какое там это тип данных boolean как), для них должна быть одна единственная форма записи, а я присвоил $this->flag = true; и как хочу так и верчу! вот что меня взбесило! а ещё ты, но я тебя не увижу никогда Бог с тобой, а с php мне ещё кое-как общаться.
![biggrin.gif](http://phpforum.ru/html/emoticons/biggrin.gif)
Ну ладно,
true false зарезервировавшие слова в языке(да какое там это тип данных boolean как), для них должна быть одна единственная форма записи, а я присвоил $this->flag = true; и как хочу так и верчу! вот что меня взбесило! а ещё ты, но я тебя не увижу никогда Бог с тобой, а с php мне ещё кое-как общаться.
Спустя 2 минуты, 40 секунд (28.02.2012 - 17:07) Rand написал(а):
1,2 - вернет истину всегда, когда переменной присваивается значение, которое в bool будет давать true (все строки кроме пустых и равных '0' - являются true)
3 - булев тип сравнивается с булевым типом, думаю, здесь всё понятно
4 - булев тип сравнивается с булевым типом, === означает, что никакое выражение не будет преобразовано в другой тип, здесь и так у правого выражения тип bool, поэтому запись равносильна ==.
5 - по скольку flag содержит переменную булевого типа, строка 'true' конвертируется в bool, все строки кроме пустых и равных '0' - являются true.
http://php.su/learnphp/datatypes/?compare_tables
3 - булев тип сравнивается с булевым типом, думаю, здесь всё понятно
4 - булев тип сравнивается с булевым типом, === означает, что никакое выражение не будет преобразовано в другой тип, здесь и так у правого выражения тип bool, поэтому запись равносильна ==.
5 - по скольку flag содержит переменную булевого типа, строка 'true' конвертируется в bool, все строки кроме пустых и равных '0' - являются true.
http://php.su/learnphp/datatypes/?compare_tables
Спустя 45 секунд (28.02.2012 - 17:08) Invis1ble написал(а):
вместо того, чтобы писать интерфейсы, пошел бы лучше основы языка почитал
Спустя 30 секунд (28.02.2012 - 17:09) Игорь_Vasinsky написал(а):
он же сказал:
Цитата |
и как хочу так и верчу! |
![biggrin.gif](http://phpforum.ru/html/emoticons/biggrin.gif)
![biggrin.gif](http://phpforum.ru/html/emoticons/biggrin.gif)
![biggrin.gif](http://phpforum.ru/html/emoticons/biggrin.gif)
Спустя 1 минута, 32 секунды (28.02.2012 - 17:10) inpost написал(а):
ФУ, я написал для ИЕ: 'true' , и верстка поехала, неужели он не понял, что я быдло-верстальщик, и я имел ввиду true , ну другие же браузеры поняли... ИЕ ГОМНО.
ФУ, я написал для PHP 'true' - и он его понял как надо, хотя правильно имелось ввиду именно true, но мой быдло-код он перевёл на правильный вид и обработал как надо.... ПХП ГОМНО.
Жизнь двойных стандартов
ФУ, я написал для PHP 'true' - и он его понял как надо, хотя правильно имелось ввиду именно true, но мой быдло-код он перевёл на правильный вид и обработал как надо.... ПХП ГОМНО.
Жизнь двойных стандартов
![smile.gif](http://phpforum.ru/html/emoticons/smile.gif)
Спустя 13 минут, 34 секунды (28.02.2012 - 17:24) Michael написал(а):
Самое интересное, что обычный, "грамотный", вариант в его пяти попытках как раз и отсутствует
![laugh.gif](http://phpforum.ru/html/emoticons/laugh.gif)
Спустя 1 минута, 56 секунд (28.02.2012 - 17:26) Invis1ble написал(а):
Michael
Цитата |
$this->flag === true |
чем этот вариант плох?
Спустя 4 минуты, 17 секунд (28.02.2012 - 17:30) Michael написал(а):
а зачем так писать? Чтобы подлиннее было может только...
Спустя 1 минута, 26 секунд (28.02.2012 - 17:31) Invis1ble написал(а):
чтобы при последующем рефакторинге и изменении возможных значений флага не словить ненароком баг
впрочем, если значения меняться не будут, то конечно такая запись избыточна
впрочем, если значения меняться не будут, то конечно такая запись избыточна
Спустя 3 часа, 15 минут, 26 секунд (28.02.2012 - 20:47) johniek_comp написал(а):
я люблю твороженные булочки...дошло, я же всех обидел в том числе и себя самого назвав php говном, типо вы тут все такие сякие...ПРОСТИТЕ!
![user posted image](http://www.materinstvo.ru/skins/default/public/images/articles/s1972_1220556505_1.jpg)
Спустя 43 минуты, 7 секунд (28.02.2012 - 21:30) twin написал(а):
Неортогональность языка не всегда минус. Если правильно уметь готовить, можно извлечь кучу профитов из этого. Ругают этот момент те, кто привык к строгой типизации. Проверка переменной на тип есть дааалеко не везде. Вот к примеру такой простенький момент:
А на обиженных воду возят. ;)
$arr = array(1 => 'первый', 2 => 'второй');в сишке повторить весьма проблематично. Так что вот.
//$id = 1;
$id = 'all';
if(is_numeric($id))
echo $arr[$id];
else
echo implode('<br>', $arr);
А на обиженных воду возят. ;)
Спустя 2 минуты, 50 секунд (28.02.2012 - 21:33) Игорь_Vasinsky написал(а):
elseif($id == 'all')
echo implode('<br>', $arr);
мы же не совершенны..вдруг забудем что ввести...
Спустя 1 минута, 20 секунд (28.02.2012 - 21:34) m4a1fox написал(а):
О! наконец я понял кого ты мне так напоминаешь... я долго не мог понять... В киниги Р. Киплинга, кто читал - поймет... то животное кот. кричало:
- Акела промахнулся, Акела промахнулся.
А как красиво. Наследовав интерфейс... а почему не 2-3. Это же в php можно...
И еще, а почему еще и такой вариант не использовал?
А то без него коллекция не полно выглядит...
- Акела промахнулся, Акела промахнулся.
А как красиво. Наследовав интерфейс... а почему не 2-3. Это же в php можно...
И еще, а почему еще и такой вариант не использовал?
if($this->flag)
А то без него коллекция не полно выглядит...
Спустя 41 секунда (28.02.2012 - 21:35) johniek_comp написал(а):
Цитата |
кто привык к строгой типизации |
вот меня и возмутило это, я в первом после написал "Ему что все равно?", в других языках такое не пройдет, вот и сорвался на пыхе родном!
![biggrin.gif](http://phpforum.ru/html/emoticons/biggrin.gif)
Спустя 27 минут (28.02.2012 - 22:02) inpost написал(а):
m4a1fox
Видимо потому, что проверка шла на true/false, то есть идея булеализации, и в случае, если бы свойство == 2, твоя проверка бы прошла, а вот == 'true' - нет.
Видимо потому, что проверка шла на true/false, то есть идея булеализации, и в случае, если бы свойство == 2, твоя проверка бы прошла, а вот == 'true' - нет.
Спустя 1 час, 42 минуты, 50 секунд (28.02.2012 - 23:45) m4a1fox написал(а):
inpost
Ясно....
Ясно....
_____________
![user posted image](http://cs617917.vk.me/v617917650/a794/Su9dwRjnK3k.jpg)