Jump to content
php.lv forumi

user levels ..... ar if ...


Recommended Posts

Posted (edited)

Lietojot switch nav vajadzības pārbaudīt pret ļaunām vērtībām, jo viss sliktais aizies uz default.

Šeit es darītu šādi (IMHO vieglāk lasāms kods)

 

$_GET['tips'] = (isset($_GET['tips']) ? $_GET['tips'] : 0);
switch($_GET['tips']){
case 1: $msg='Tu pirmā tipa lietotājs'; break;
case 2: $msg='Tu esi otrais tips'; break;
default: $msg='Tu esi, kaut kas netipisks. Man bail!';
}

Edited by Toms
  • Replies 44
  • Created
  • Last Reply

Top Posters In This Topic

Popular Days

Top Posters In This Topic

Posted

Es gan to darītu šādi:

$users = array(
1 => 'Tu pirmā tipa lietotājs',
2 => 'Tu esi otrais tips',
);

$tips = (isset($_GET['tips']) ? (int)$_GET['tips'] : $defaultaa_veertiiba);
if (array_key_exists($tips, $users))
{
$msg = $users[$tips];
}
else
{
$msg = "Tu esi, kaut kas netipisks. Man bail!"; 
}

;

 

Mazāk jāraksta kods, lai pievienotu jaunu vērtību (tipa tas case X, break).

Posted

andrisp, domāju, ka tāpēc

isset() does not return TRUE for array keys that correspond to a NULL value, while array_key_exists() does.
Posted

Arī centīšos atbildēt, lai mani palabo bubu, ja kaut ko ne tā izprotu.

empty() Return Values

 

Returns FALSE if var has a non-empty and non-zero value.

 

The following things are considered to be empty:

 

* "" (an empty string)

* 0 (0 as an integer)

* "0" (0 as a string)

* NULL

* FALSE

* array() (an empty array)

* var $var; (a variable declared, but without a value in a class)

Posted

Liekas, ka bubu ir pieradis pārbaudīt masīvus ar array_key_exists(), tāpēc tā. Konkrētajā gadījumā NULL nebūtu traucēklis..

Posted

Toms, nu tak neņem tik nopietni. Es tikai iedomājos, ka varbūt ir kāds svarīgs iemesls kapēc bubu to izmanto. Tāpēc arī pajautājumu. Protams, ka pats katrs izmanto to, ko grib (protams, ja strādā:).

Posted
hmm, bubu, ir kāds iemesls kāpēc array_key_exists nevis vienkārši isset ?

Tāpēc, ka man nepatīk nedefinētas vērtības. Un tāpēc, ka manas ikdienas darbs norit ar programmēšānas valodām, kurās nevar lietot nedefinētus mainīgos, tāpēc esmu pieradis lietot normālas funkcijas/metodes pārbaudēm, nevis valodas hakus/īpatnības. Manā uztverē ir tikai normāli paskatīties vai kautkas tur tiešām eksistē pirms to lietot (ar vai bez isset'a).

 

isset izskatās pēc kautkā tāda, ka it kā mēģinat izvilkt no masīva elementu - un ai, ja nu nesanāca, tad atgriezīsim false, nevis true. Pats tais retās reizēs, kad sanāk programmēt php, arī GET/POST atslēgas čekoju ar key_exists nevis isset. Bet nu kaut ko tādu sākt te rakstīt... tikai vairāk jautājumus pretī dabūšu.


×
×
  • Create New...