Maison  >  Article  >  développement back-end  >  Explication détaillée des opérateurs de tableau PHP, des opérateurs de chaîne et des exemples d'opérateurs logiques

Explication détaillée des opérateurs de tableau PHP, des opérateurs de chaîne et des exemples d'opérateurs logiques

伊谢尔伦
伊谢尔伦original
2017-06-21 15:51:441788parcourir

phpOpérateurs de tableau

$a + $b union L'union de $a et $b.
$a == $b est égal à TRUE si $a et $b ont la même paire clé/valeur.
$a === $b Congruent TRUE si $a et $b ont les mêmes paires clé/valeur et sont du même ordre et type.
$a != $b n'est pas égal à VRAI si $a n'est pas égal à $b.
$a a8093152e673feb7aba1828c43532094 $b n'est pas égal à VRAI si $a n'est pas égal à $b.
$a !== $b n'est pas égal à VRAI si $a n'est pas égal à $b.

Le seul opérateur de tableau en PHP est l'opérateur +. Il ajoute le tableau de droite au tableau de gauche, mais les valeurs de clé en double ne sont pas écrasées.

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

Après l'exécution, ce script affichera :

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

Les unités du tableau seront égales lorsqu'on les compare si elles ont le même nom de clé et la même valeur.

<?php
$a = array("apple", "banana");
$b = array(1 => "banana", "0" => "apple");
var_dump($a == $b); // bool(true)
var_dump($a === $b); // bool(false)
?>

Opérateurs de chaîne

Il existe deux opérateurs de chaîne. Le premier est l'opérateur de concaténation ("."), qui renvoie la chaîne concaténée de ses arguments gauche et droit. Le second est la concaténation opérateur d'affectation (".="), qui ajoute l'argument de droite à l'argument de gauche

<?php
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
?>
<?php
 $a = &#39;12345&#39;;
// This works:
 echo "qwe{$a}rty"; // qwe12345rty, using braces
 echo "qwe" . $a . "rty"; // qwe12345rty, concatenation used
// Does not work:
 echo &#39;qwe{$a}rty&#39;; // qwe{$a}rty, single quotes are not parsed
 echo "qwe$arty"; // qwe, because $a became $arty, which is undefined
?>

opérateur logique

$a et $b Et (logique ET) VRAI si $a et $b sont VRAI.
$a ou $b Ou (OU logique) VRAI si $a ou $b est VRAI.
$a xor $b Xor (OU exclusif logique) TRUE si $a ou $b est TRUE , mais pas les deux.
! $a Not (logique non) TRUE , si $a n'est pas TRUE .
$a && $b Et (logique ET) VRAI si $a et $b sont VRAI.
$a || $b Ou (OU logique) VRAI si $a ou $b est VRAI.

La raison pour laquelle « ET » et « OU » ont deux formes d'opérateurs différentes est que les priorités de leurs opérations sont différentes.

<?php
($a = $_GET[&#39;var&#39;]) || ($a = &#39;a default&#39;);
?>
<?php
// 下面的 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);
?>

Le résultat de la routine ci-dessus est similaire à :

bool(true)
bool(false)
bool(false)
bool(true)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn