- Home
- Categorie
- Coding e Sistemistica
- PHP
- if espressioni con più constanti
-
if espressioni con più constanti
Cercavo un modo per fare questo
[PHP]$cod = "milano";
if ($cod == 'roma' or 'milano' or 'Genova' or 'napoli'){
//espressione verificata
}else{
//espressione non verificata
}[/PHP]ma ovviamente messo cosi non mi funziona
funziona però cosi
[php]$local = "milano";
$località = "roma%milano%genova";
$località = explode("%", $località);
$countlocal = count($località);
for ($i = 1; $i <= $countlocal; $i++) {
if ($local == "$località*"){
$conf = 'on';
}else{
$conf = 'off';
}
}
if ($conf == 'on'){
//espressione positiva
}else{
//espressione negativa
}[/php]però è un codice troppo lungo
non c'è un modo veloce (con poco codice php) per verificare se $cod corrisponde a quelle città?
ciauz
-
Ciao Alessiofbt,
La sintassi corretta è la seguente:
[php]
$cod = "milano";
if ($cod == 'roma' || $cod == 'milano' || $cod == 'Genova' || $cod == 'napoli')
{
//espressione verificata
}
else
{
//espressione non verificata
}
[/php]
-
grazie e io che continuavo ad usare and e or
-
Puoi anche usare OR, è indifferente, però non riscrivevi $variabile == 'valore'.
-
Una sola cosetta, al php ogni tanto non va a genio il confronto di stringhe in questo modo, io personalmente ho avuto problemi facendo così tempo fa, potrebbero esser cambiate le cose, ti posto un altro modo se per caso ti dà problemi questo confronto.
[php]
$confronto=strcmp($stringa1,$stringa2);
[/php]Restituisce 0 se sono uguali (se invece $stringa1 è maggiore di $stringa2 restituisce un valore maggiore di 0, viceversa restituisce un valore minore di 0).