Home Backend Development PHP Tutorial Symbols of PHP comparison operators and logical operations

Symbols of PHP comparison operators and logical operations

Nov 25, 2016 pm 01:36 PM
php

An operator is a symbol that tells the compiler to perform a specific arithmetic or logical operation. It usually forms an expression together with the operands. We often see it participating in mathematical operations or logical operations. PHP also contains many operators. This article explains in detail the very important comparison operators.

Symbols of PHP comparison operators and logical operations

Comparison operator types

As their name implies, allow comparison of two values. The comparison operators are as follows:
1) $a > $b is greater than: if $a is strictly greater than $b, then TRUE is returned
2) $a 3) $a >= $b Greater than or equal to: If $a is greater than or equal to $b, return TRUE
4) $a 5) $a $b is not equal to: if $a is not equal to $b, return TRUE
6) $a != $b is not equal to: if $a is not equal to $b, return TRUE (same as above )
7) $a == $b is equal to: If $a is equal to $b, return TRUE
8) $a === $b is equal to: if $a is equal to $b, and their types are also the same, then Return TRUE
9) $a !== $b is not equal to: If $a is not equal to $b, or their types are different, then TRUE is returned

Among them, we need to focus on distinguishing between "equal to" and "all equal to", $a == $b only performs a comparison operation on the values ​​​​of the two variables, while equality requires comparing the values ​​​​and data types of the expressions on both sides of the operator at the same time. Only when the values ​​​​on both sides are equal, the operation result will be is true". Combined with the "inequality" operator, for example, $a = 2; var_dump($a!==2); this expression returns "false" because 2 is equal to 2. In addition, $a = 2; is an integer type and 2 in var_dump($a!==2); is also an integer type, but the operator is not exactly equal to "!==", so the result is false, because 2 is equal to 2 . On the other hand, if this is the case $a = 2; var_dump($a!=='2'); the result of the operation is "true", because 2 is not equal to '2', and the following '2' is a string of '2' ', that is, not all equals not only compare the variable values, but also compare the data types of the variables.

Comparing results of different types in PHP

If the PHP comparison operator compares an integer and a string, the string will be converted to an integer and then compared. If you compare two numeric strings, they are compared as integers, and this rule also applies to switch statements.
For example:
var_dump(0 == "a"); // Return TRUE, "a" is converted to 0
var_dump("1" == "01"); // Return TRUE, treated as an integer

string Or comparison between null and string: Convert NULL to "" to compare numbers or strings
Comparison between bool or null: Convert to bool, FALSE Object built-in classes can define their own comparisons, different classes cannot Comparison, if the same class compares attributes
Comparison between string, resource or number: Convert strings and resources into numbers, compare according to ordinary mathematics
Comparison between arrays: Arrays with fewer members are smaller, if the operand 1 is in The key does not exist in operand 2, so the arrays cannot be compared and need to be compared value by value (see the following code)
Comparing array with any other type: array is always larger
Comparing object with any other type: object is always larger

Array comparison code:

function standard_array_compare($op1, $op2) 
{ 
if (count($op1) < count($op2)) { //具有较少成员的数组较小
return -1; // $op1 < $op2 
} elseif (count($op1) > count($op2)) { 
return 1; // $op1 > $op2 
} 
foreach ($op1 as $key => $val) { 
if (!array_key_exists($key, $op2)) { 
return null; 
} else if ($val < $op2[$key]) { 
return -1; 
} elseif ($val > $op2[$key]) { 
return 1; 
} 
} 
return 0; // $op1 == $op2 
}
Copy after login

Ternary operator in comparison operator:

Expression (expr1) ? (expr2) : (expr3) When the value of expression expr1 is TRUE, the value is expr2, when The expression expr1 evaluates to FALSE when it evaluates to expr3.


Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
1 months ago By 尊渡假赌尊渡假赌尊渡假赌
Two Point Museum: All Exhibits And Where To Find Them
1 months ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

CakePHP Project Configuration CakePHP Project Configuration Sep 10, 2024 pm 05:25 PM

In this chapter, we will understand the Environment Variables, General Configuration, Database Configuration and Email Configuration in CakePHP.

PHP 8.4 Installation and Upgrade guide for Ubuntu and Debian PHP 8.4 Installation and Upgrade guide for Ubuntu and Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati

CakePHP Date and Time CakePHP Date and Time Sep 10, 2024 pm 05:27 PM

To work with date and time in cakephp4, we are going to make use of the available FrozenTime class.

CakePHP File upload CakePHP File upload Sep 10, 2024 pm 05:27 PM

To work on file upload we are going to use the form helper. Here, is an example for file upload.

CakePHP Routing CakePHP Routing Sep 10, 2024 pm 05:25 PM

In this chapter, we are going to learn the following topics related to routing ?

Discuss CakePHP Discuss CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP is an open-source framework for PHP. It is intended to make developing, deploying and maintaining applications much easier. CakePHP is based on a MVC-like architecture that is both powerful and easy to grasp. Models, Views, and Controllers gu

CakePHP Creating Validators CakePHP Creating Validators Sep 10, 2024 pm 05:26 PM

Validator can be created by adding the following two lines in the controller.

CakePHP Working with Database CakePHP Working with Database Sep 10, 2024 pm 05:25 PM

Working with database in CakePHP is very easy. We will understand the CRUD (Create, Read, Update, Delete) operations in this chapter.

See all articles