Autor Zpráva
23k
Profil
1/ if (($user =="") OR ($pass=="")) echo "empty";
2/ if ($user =="" OR $pass=="") echo "empty";

Ktery z vyse uvedenych zpusobu je spravne?
Dle meho mineni jsou spravne OBA! Kolega tvrdi ze pouze 1/
Leo
Profil
Odpovite si snadno sam, pokud zjistite

1, jestli to haze syntaktickou chybu (testem)
2, jaka je priorita operatoru (v manualu)

Leo
Anonymní
Profil *
No v C# je to jeste vtipnejsi. Je tam mnoho zapisu jednoho a toho sameho. A vsechny spravne

string a;
1, if(a.Trim().Lengh() == 0)
2, if(a.Trim() == "")
3, if(a.Trim() == null)

no a nekdy se pisou tyhle podminky za sebou. No ale pak to funguje zarucene
La_ToRaNTe
Profil
Podle mě je správně ten první.
halogan
Profil
Oba jsou syntakticky správně, ale jsou to prasárny.
Používej empty() a v některých případech isset().
Leo
Profil
Ale on treba nechce testovat jestli je promenna inicializovana, chce testovat jestli je rovna prazdnemu retezci :-) Leo
halogan
Profil
Leo: Jo, taky dělám běžně :o)
Já osobně používám pouze empty a isset v případě, kdy chci opravdu použít prázdný řetězec (prázdná value u optionu ve formuláři)
llook
Profil
Oba jsou stejný. viz http://www.php.net/manual/cs/language.operators.precedence.php

V matematice je taky jedno, jestli napíšete "a + b * c - d" nebo "(a + (b * c)) - d". Osobně ale radši píšu závorky i tam kam nemusím, protože chyby v prioritě operátorů se strašně blbě hledají.
23k
Profil
funkcim Isset a Empty znam opravdu dokonale. Zde jsem resil jiny problem. Chtel jsem vedet zda jsou oba zpusoby spravne. Nyni to jiz vim a mohu klidne spat
Toto téma je uzamčeno. Odpověď nelze zaslat.