2008-10-30 15 views
21

Co robi poniższy kod? Powinien być również link do czegoś w podręczniku PHP. !Operator PHP <>

if ($_SERVER['SERVER_PORT'] <> 443) { 
    doSomething(); 
} 

Odpowiedz

24

samo jak = "nie równa się"

false <> true // operator will evaluate expression as true 
false != true // operator will evaluate expression as true 

Oto niektóre odniesienia: PHP Comparison Operators

+1

Pokonał o 2 sekundy! –

6

To kolejny sposób powiedzenia "nie równa się" (operator !=). Uważam to za operator "mniejszy lub większy niż", który tak naprawdę oznacza po prostu "nie równy".

+0

Jest to równoznaczne z powiedzeniem: Mniejsze niż I większe niż. –

+2

@RobFarr Nie sądzę. Nic nie może być mniejsze niż i większe niż. – amhokies

2

$_SERVER['SERVER_PORT'] pobiera port używany przez serwer WWW do obsługi żądań HTTP. $_SERVER['SERVER_PORT'] <> 443 sprawdza czy port nie jest równa 443 (domyślny port HTTPS), a jeśli nie, wywołuje doSomething()

2

Zauważ, że zachowuje się jak !=<> nawet gdzie < i > nie są oczywiste operatorów porównania (np $str1 <> $str2).

+0

Dlaczego < and > nie są "oczywistymi operatorami porównania" dla łańcuchów? – PhiLho

+0

Co oni do cholery porównują? O ile wiem, porównują "wartość" (alfabetycznie, a eyelidlessness

+2

@PhiLho Struny nie są często uważane za mniejsze lub większe od siebie, chyba że porównasz długość napisu. Tutaj powstaje większość zamieszania. – orokusaki

2

Chociaż PHP jest w większości oparty na składni w stylu C, jest to jedna z dziwnych rzeczy, które pochodzą ze świata składni w stylu BASIC.

Nie trzeba dodawać, że po prostu użyłbym != i byłbym zgodny z tym, ponieważ <> nigdy nie jest używany.