Сравнение оператори в PHP

Сравнение оператори в PHP

Разбиране на релационни оператори

Сравнение оператори в PHP работят стриктно това, което излиза от техните имена. Сравнявайки може да бъде всякакъв вид информация: низове, числа, числа с плаваща запетая, масиви и т.н. Резултатът от израза винаги е булева стойност: вярно или невярно.

Сравнявайки множество логически оператори могат да образуват претенции сложни вериги. Например, "Ако двете числа са равни, а другите две цифри не са равни, в резултат на целия израз е вярно." Основно място на операторите за сравнение на работа - е да се изгради условностите, които ви позволяват да се извърши едно действие, ако параметъра вход е вярно и друго действие, ако това е лъжа.

Преди да погледнем към списъка с агенти, принадлежащи към този вид, ние отбелязваме няколко важни точки:

  • PHP извършва автоматично преобразуване тип данни. В зависимост от контекста, има два типа оператори за сравнение: "нормално" и "идентичност".
  • Когато един обикновен оператор се опитва да сравни две стойности, той първо ги отвежда до един тип данни, а след това изпълнява сравнение.
  • Идентичност оператор не цени от същия тип данни. Ето защо, ако прехвърлените стойности на различните видове, сравнението като такива, няма да бъдат изпълнени.

Таблица описващ оператори за сравнение:

По-долу ще разгледаме някои примери за използването на оператори за сравнение в PHP, и по-подробно разглеждане на различните видове данни, предоставени по-късно в тази статия.

важно
Ако има едно сравнение на низа, низ ще се превърнат в брой. Това се дължи на скрития механизъм тип реализация, вграден в корпуса.

Сравнявайки струни

При сравняване на низове в PHP оператори само за самоличност силно препоръчително. Избягвайте всички реализации, автоматични тип. Не е изключено, че ситуацията не може да се предвиди, а такова поведение ще бъде едва доловими грешки в кода си.

За сравнение на низове за използване оператори равенство "===" и "! ==". Те са малки и големи букви. Низът "сирене" и "кашкавал" не е равно, тъй като буквите в различни случаи се разглеждат различни.

сравняване на числата

В PHP, сравнение на числа не предизвиква затруднения. Използвайки съответните оператори разбрани без обяснение, но сравнение на дробни числа много противоречиви. Две дробни числа не могат да се сравняват един с друг без предварителна обработка. Обърнете внимание на примера по-долу.

важно
Проблемът не е причинена от грешка в PHP интерпретатор. Той е общ за всички компютри, независимо от езика за програмиране. Преработвателите на физическо ниво не е в състояние да поддържа точно представяне на дробни числа.

трябва да използвате "закръгляване единица", за да се сравнят две дробни числа. Внимателно прочетете примера по-долу.

Сравнявайки масиви

В сравнение масиви могат да участват само операторите "==", "! =" "===" и "! ==". Важно е да се разбере, че масива - е контейнер, състоящ се от вградени ценности в него и в операции за сравнение, те са ангажирани. Това означава, че сравняването на двата масива, да започнете процеса за всеки двойки ключ / стойност, които се съдържат в тях.

Те действат в съответствие със следните принципи: