Home  >  Article  >  Backend Development  >  PHP array operator (+), string operator (.), logical operator (&& AND || OR XOR)_PHP tutorial

PHP array operator (+), string operator (.), logical operator (&& AND || OR XOR)_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 17:14:49942browse

Array operator (+), string operator (.), logical operator (&& AND || OR XOR), friends in need can refer to it.

php array operator


$a + $b union The union of $a and $b.
$a == $b equal TRUE if $a and $b have the same key/value pair.
$a === $b Congruent TRUE if $a and $b have the same key/value pairs and are of the same order and type.
$a != $b does not equal TRUE if $a does not equal $b.
$a <> $b does not equal TRUE if $a does not equal $b.
$a !== $b is not equal TRUE if $a is not equal to $b.

The only array operator in PHP is the + operator. It appends the right array to the left array, but duplicate key values ​​are not overwritten.

The code is as follows Copy code
 代码如下 复制代码

$a = array("a" => "apple", "b" => "banana");
$b = array("a" =>"pear", "b" => "strawberry", "c" => "cherry");

$c = $a + $b;

var_dump($c);

$a = array("a" => "apple", "b" => "banana");

$b = array("a" =>"pear", "b" => "strawberry", "c" => "cherry");

 代码如下 复制代码

array(3) {
  ["a"]=>
  string(5) "apple"
  ["b"]=>
  string(6) "banana"
  ["c"]=>
  string(6) "cherry"
}

$c = $a + $b;

var_dump($c);


After execution, this script will display:
The code is as follows Copy code
 代码如下 复制代码

$a = array("apple", "banana");
$b = array(1 => "banana", "0" => "apple");

var_dump($a == $b); // bool(true)
var_dump($a === $b); // bool(false)
?>

array(3) {

["a"]=>

string(5) "apple"

["b"]=>

string(6) "banana"
 代码如下 复制代码

echo "thr"."ee"; //prints the string "three"
echo "twe" . "lve"; //prints the string "twelve"
echo 1 . 2; //prints the string "12"
echo 1.2; //prints the number 1.2
echo 1+2; //prints the number 3

?>

["c"]=> string(6) "cherry" }
Units in the array are equal when compared if they have the same key name and value. Example #1 Comparing arrays
The code is as follows Copy code
$a = array("apple", "banana");<🎜> $b = array(1 => "banana", "0" => "apple"); var_dump($a == $b); // bool(true) var_dump($a === $b); // bool(false) ?>
String operators There are two string operators. The first is the concatenation operator ("."), which returns the concatenated string of its left and right arguments. The second one is the concatenation assignment operator (".="), which appends the right argument to the left argument
The code is as follows Copy code
<🎜>echo "thr"."ee"; //prints the string "three"<🎜> echo "twe" . "lve"; //prints the string "twelve"<🎜> echo 1 . 2; //prints the string "12"<🎜> echo 1.2;                                  //prints the number 1.2<🎜> echo 1+2;                                   //prints the number 3<🎜> <🎜>?>

Example

! $a Not TRUE if $a is not TRUE. $a && $b And (logical AND) TRUE if both $a and $b are TRUE.
The code is as follows
 代码如下 复制代码

$a = '12345';

// This works:
echo "qwe{$a}rty"; // qwe12345rty, using braces
echo "qwe" . $a . "rty"; // qwe12345rty, concatenation used

// Does not work:
echo 'qwe{$a}rty'; // qwe{$a}rty, single quotes are not parsed
echo "qwe$arty"; // qwe, because $a became $arty, which is undefined

?>

Copy code


$a = '12345';


// This works:
echo "qwe{$a}rty"; // qwe12345rty, using braces
echo "qwe" . $a . "rty"; // qwe12345rty, concatenation used

// Does not work:

echo 'qwe{$a}rty'; // qwe{$a}rty, single quotes are not parsed

echo "qwe$arty"; // qwe, because $a became $arty, which is undefined

?>

 代码如下 复制代码

($a = $_GET['var']) || ($a = 'a default');

?>

 代码如下 复制代码

// 下面的 foo() 不会被调用,因为它们被运算符“短路”了。
$a = (false && foo());
$b = (true || foo());
$c = (false and foo());
$d = (true or foo());

// "||" 的优先级比 "or" 高
$e = false || true; // $e 被赋值为 (false || true),结果为 true
$f = false or true; // $f 被赋值为 false [Altair注:"=" 的优先级比 "or" 高]
var_dump($e, $f);

// "&&" 的优先级比 "and" 高
$g = true && false; // $g 被赋值为 (true && false),结果为 false
$h = true and false; // $h 被赋值为 true [Altair注:"=" 的优先级比 "and" 高]
var_dump($g, $h);
?>

Logical operator

Examples of logical operators in the table below

$a and $b And (logical AND) TRUE if both $a and $b are TRUE.
$a or $b Or (logical OR) TRUE if either $a or $b is TRUE .

$a xor $b Xor (logical exclusive OR) TRUE if either $a or $b is TRUE , but not both.
$a || $b Or (logical OR) TRUE if either $a or $b is TRUE .

The reason why "AND" and "OR" have two different forms of operators is that the priorities of their operations are different.

The code is as follows Copy code
($a = $_GET['var']) || ($a = 'a default'); ?> Example
The code is as follows Copy code
<🎜> // The following foo() will not be called because they are "short-circuited" by the operator. <🎜> $a = (false && foo());<🎜> $b = (true || foo());<🎜> $c = (false and foo());<🎜> $d = (true or foo());<🎜> <🎜>// "||" has a higher priority than "or"<🎜> $e = false || true; // $e is assigned the value (false || true), and the result is true<🎜> $f = false or true; // $f is assigned false [Altair note: "=" has a higher priority than "or"]<🎜> var_dump($e, $f);<🎜> <🎜>// "&&" has a higher priority than "and"<🎜> $g = true && false; // $g is assigned the value (true && false), and the result is false<🎜> $h = true and false; // $h is assigned true [Altair note: "=" has a higher priority than "and"]<🎜> var_dump($g, $h);<🎜> ?> The output of the above routine is similar to: bool(true) bool(false) bool(false) bool(true) http://www.bkjia.com/PHPjc/628946.htmlwww.bkjia.comtruehttp: //www.bkjia.com/PHPjc/628946.htmlTechArticleArray operator (+), string operator (.), logical operator (AND || OR XOR ) Friends in need can refer to it. PHP array operator $a + $b combines the union of $a and $b. $a == $b is equal...
Statement:
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