Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Сравнение, сравнение и еще раз сравнение


Автор: Kolia 29.7.2003, 17:28
Есть какие-то две переменные. Их необходимо сравнить:
if($mmm!=$mmm2)
{
echo("blin");
exit();
}
На такое он мне и выкидывает "blin".

HO... Перепишим так:
$a=$mmm;
$b=$mmm2;
if($a!=$b)
{
echo("blin");
exit();
}
и никакими блинами и не пахнет. Как это все обьяснить?

Автор: arial 29.7.2003, 17:59
Kolia, это бред!
<здесь был модер>
Ты элементарно что-то напутал!!!

Автор: HalkaR 29.7.2003, 18:59
Kolia, а exit() в первом блоке ты не убрал? Просто при первом блине прога заканчивается.

Автор: Master 30.7.2003, 09:28
Kolia blin. sad.gif
Какие значения у переменных?
если конечно не сбудеться то, что сказал HalkaR.

Автор: Kolia 30.7.2003, 09:30
Цитата(HalkaR @ 29.7.2003, 18:59)
Kolia, а exit() в первом блоке ты не убрал? Просто при первом блине прога заканчивается.

Не, нк вы все меня тут ваще за лоха держите!

Я чуток не так понят был. Эти два кода не идут один за другим. Это один и тот же код. То есть, сначала был
if($mmm!=$mmm2)
{
echo("blin");
exit();
}
Он мне и выкинул этот "блин". Хотя эти переменные равны. Тогда я ИЗИМЕНЯЮ код, а не дописываю дальше.

$a=$mmm;
$b=$mmm2;
if($a!=$b)
{
echo("blin");
exit();
}

Тут уже блина не видно.

Автор: Master 30.7.2003, 09:37
Цитата
Хотя эти переменные равны

Ты то сам понял что делаеш.
Ничего он не выкенет тебе если они равны, у тебя что в условии написано.
http://www.php.net/if тебе поможет.

Автор: Master 30.7.2003, 09:39
Вот твой код:

Код
<?php
$mmm = 1;
$mmm2 = 1;

$a = $mmm;
$b = $mmm2;

if($a != $b) {
echo("blin");
}

if($mmm!=$mmm2) {
echo("blin");
}

?>


Результатом этого кода будет не блин, не 1 и не два, а хрен без масла.

Автор: Kolia 30.7.2003, 10:03
Вот именно, что должен быть блин без масла!!!!!! Но блин ВЫКИДЫВАЕТ в одном случае, и не выкидывает в другом.

Автор: Master 30.7.2003, 10:17
Kolia ну зачем ты пориш чушь?
ничего он выкидывать не должен и не выкидывает не с маслом и не без масла, ни в одном случае и не в другом.
Ты сначала посмотри на результаты и проверь свой код.

Автор: HalkaR 30.7.2003, 10:27
Kolia, выложи сдесь свой код, ничего не меняя и запустив его предварительно.

Автор: MuToGeN 30.7.2003, 10:38
Модератор: народ, давайте без оскорблений...
Цитата

$mmm=1;
$mmm2=2;

if($mmm!=$mmm2)
{
echo("blin");
exit();
}

$a=$mmm;
$b=$mmm2;
if($a!=$b)
{
echo("blin");
exit();
}
Вообще-то, елси скрипт выглядит именно так, то дальше жирной строки он выполняться не будет smile.gif

Автор: Master 30.7.2003, 11:03
Цитата
Вообще-то, елси скрипт выглядит именно так, то дальше жирной строки он выполняться не будет

Да он сказал что переменные у него равны, а скрипт блиниться. sad.gif

Автор: arial 30.7.2003, 11:21
Цитата(arial @ 29.7.2003, 18:59)
<здесь был модер>

Вот это правильно!
А то меня чё то после PHP клуба понесло!
Типа сори и всё такое! hehe.gif

Автор: Master 30.7.2003, 12:05
Цитата
А то меня чё то после PHP клуба понесло!

Да там бывалые страдают чертой оскорбления sad.gif
Я сам там общаться пытался sad.gif но не сложилося.
сорри за офф.

Автор: Kolia 30.7.2003, 14:29
Хотите верьте, хотите нет.

Свой код выкладывать нет смысла, т.к. одна переменная берется из таблицы БД, а другая вводится пользователем (типа введенный пароль тута проверяется).

Перед всей этой проверкой специально выводил обе переменные на экран. Что одна была "666666", что и другая "666666". Но все равно выводился этот блин, хотя по идее и не должно было так быть (как уже писал, в одном случае все хорошо, в другом не очень). Так что насчет "а равны ли они" прошу не гнать.

Я вобще-то ждал ответа, зависит ли при сравнении тип переменных. Потому что по идее одна - "строка", другая - "число". В С++ сравнивать таким образом строки нельзя.

Хочу всех обрадовать, что все это дело заработалоsmile.gif)))))) Правда я все стер и написал скрипт заново. Где там падла сидела, для меня так и осталосб загадкой.

Пасиба всем за помощьsmile.gif))))))))

Автор: arial 30.7.2003, 14:35
Проверяй так:
Код
$a === $b

Автор: Master 30.7.2003, 14:42
Очень хочеться грязно выругнуться.
Ну очень хочеться...

Автор: arial 30.7.2003, 14:50
Цитата(Master @ 30.7.2003, 15:42)
Очень хочеться грязно выругнуться.
Ну очень хочеться...

СТОП! Спокойствие, только спокойствие!
<здесь был модер>
Все нормально! biggrin.gif

Автор: Kefir 30.7.2003, 18:17
Kolia, про тип при сравнеении: нет, не зависит, но, если ты хочешь чтобы ПХП сравнивал и тип переменной, то пиши вместо "==" - "===", и вместо "!=" - "!==". Вот так.

Автор: HalkaR 30.7.2003, 18:56
Kolia, выложил бы код, не сперли бы мы его. Зато изучили бы. Авось и нашли бы блин.

P.S.<здесь был модер>

А ругаться не надо! Ребята, довайте жить дружно!

Автор: arial 30.7.2003, 20:57
Цитата(Kefir @ 30.7.2003, 19:17)
Kolia, про тип при сравнеении: нет, не зависит, но, если ты хочешь чтобы ПХП сравнивал и тип переменной, то пиши вместо "==" - "===", и вместо "!=" - "!==". Вот так.

Сия хрень называется идентичность переменных.

Автор: Kolia 31.7.2003, 10:36
Цитата(HalkaR @ 30.7.2003, 18:56)
Kolia, выложил бы код, не сперли бы мы его. Зато изучили бы. Авось и нашли бы блин.

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

Ну да ладно, проехали. Все типа вроде и работает.


Автор: rMaveric 2.8.2003, 15:44
Kolia Эх.. то что заработало.. это конечно хорошо...

А вот к одной переменной тебе бы лучше было привести....

И если это пароль.... То Какой может быть числоconfused.gif? Если пароль по определению строка...

Автор: Kolia 6.8.2003, 11:38
Цитата(rMaveric @ 2.8.2003, 15:44)
Kolia Эх.. то что заработало.. это конечно хорошо...

А вот к одной переменной тебе бы лучше было привести....

И если это пароль.... То Какой может быть числоconfused.gif? Если пароль по определению строка...

Этим мне РНР не нравится... нет такой конкретности. Хоть кислое с черным сравнивай.

Автор: Master 6.8.2003, 12:10
Цитата
Этим мне РНР не нравится

Ну да, разработчики вообче идиоты, и потом если тут медом не намазано, то почему ты не ищеш альтернативу?

Автор: HalkaR 6.8.2003, 13:04
Цитата
Этим мне РНР не нравится... нет такой конкретности. Хоть кислое с черным сравнивай.
Тогда как ты к Перлу относишься? Там вообще сравнения еще левее.

Автор: mr.DUDA 6.8.2003, 16:26
имхо, сравнения разных типов это очень продуманная весчь, жизнь облегчает намного

Автор: rMaveric 6.8.2003, 21:37
mr.DUDA облегчает... А кто спорит... Только аккуратным при этом надо быть...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)