Почему & quot; а & quot; & GT; & Quot; б & Quot; оценивает как ложное? (Как PHP сравнивает строковые символы)

Почему "a" > "b" оценивает как ложное?

Это извращение из-за алфавита. Но как PHP знает, что a меньше чем b?

var_dump("a" > "b"); //boolean false

2

Решение

Но как php узнает, что «a» меньше, чем «b»?

PHP берет ASCII значения символов и сравнить их. Так вот, как PHP решает, какой символ «меньше», чем другой.

ASCII таблица:

ASCII таблица

Итак, в вашем примере:

a = 97  //'97' is the ASCII value from 'a'
b = 98  //'98' is the ASCII value from 'b'

var_dump("a" > "b"); //boolean false
var_dump(97 > 98);   //The same

Вы можете получить значение ASCII символа с ord(), например

echo ord("a");  //output 97

И наоборот chr() который дает вам символ для значения ASCII, например,

echo chr(97);  //output a

И для получения дополнительной информации о ASCII.

2

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector