Jump to content
php.lv forumi

Jautājums par salīdzināšanu..


Pentiums

Recommended Posts

Manuprāt te runa bija tieši par

$var1!=$var2

un

!($var1==$var2)

Šie vienmēr būs vienādi.

 

EDIT: Varbūt nepareizi sapratu pašu jautājumu un Pentiums tiešām bija domājis tāpat kā rakstijis.

Edited by marcis
Link to comment
Share on other sites

Redziet, problēma ir tāda, ka php nav konkrēti izdalīti mainīgo tipi... Tāpēc sekojiet tiem līdzi paši, kas cits atliek...

Javā tai ziņā viss ir kārtībā - String ir String un nekas cits kā string.

Tiesa gan - nedefinēti mainīgie Java pieņem vērtību null, kas patiesībā nozīmē - vērtības neesamība, bet tas nav false! :P

 

php viss ir ļoti vienkārši:

 

Loģisko false (kas attiecīgi izpildīsies tā IFos utt.), atgriezīs, piemēram, šādi mainīgie:

$var1 = "";

$var2 = false;

$var3 = null;

$var4 = 0;

$var5 = "0"; // neesmu gan drošs

// utt.

 

Es, protams, no galvas šo lietu nezinu, būtu jau vispār labi, ja uztaisītu kāds tādu sarakstiņu - kas var atgriezt false (un attiecīgi viss pārējais atgriezīs true)! :)

Edited by Java
Link to comment
Share on other sites

Redziet, problēma ir tāda, ka php nav konkrēti izdalīti mainīgo tipi...

Muļķības. PHP katram mainīgajam piemīt konkrēts tips. http://php.net/gettype

Tas tev nav nekāds visual basic ar Variant tipu. Cita runa, ka php daudzas konvertācijas starp tipiem ir implicitas, (string->bool, int->string), t.i. notiek automātiski, neko īpaši nedarot.

"" nav tas pats, kas false. Tas, ka tas ir vienāds salīdzinot to ar false, ir cita runa. Ekvivalents tas nav.

Link to comment
Share on other sites

×
×
  • Create New...