Heim > Backend-Entwicklung > PHP7 > Was ist der Unterschied zwischen „??' und „?:' in PHP7?

Was ist der Unterschied zwischen „??' und „?:' in PHP7?

PHPz
Freigeben: 2023-02-17 17:46:02
nach vorne
3696 Leute haben es durchsucht

Was ist der Unterschied zwischen „??' und „?:' in PHP7?

Empfohlenes Tutorial: „PHP7

Übung bringt wahres Wissen ~

Testcode

Eingabetest:

<?php
    $array = [
        &#39;a&#39; => 1,
        'b' => 2,
        'c' => [],
    ];

    $a = $array['c'] ?? 0;
    $b = $array['c'] ?: 0;
    $c = $array['d'] ?? 0;
    $d = $array['d'] ?: 0;
    $e = $array['c'] ? 1 : 0;
    $f = isset($array['c']) ? 1 : 0;
    $g = $array['d'] ? 1 : 0;
    $h = isset($array['d']['e']) ? 1 : 0;
    $i = !empty($array['c']) ? 1 : 0;
    $j = !empty($array['d']) ? 1 : 0;

    var_dump($a);
    var_dump($b);
    var_dump($c);
    var_dump($d);
    var_dump($e);
    var_dump($f);
    var_dump($g);
    var_dump($h);
    var_dump($i);
    var_dump($j);
Nach dem Login kopieren

Ausgabeergebnis:

PHP Notice:  Undefined index: d in /home/fanyu/abc.php on line 11
PHP Notice:  Undefined index: d in /home/fanyu/abc.php on line 14
array(0) {
}
int(0)
int(0)
int(0)
int(0)
int(1)
int(0)
int(0)
int(0)
int(0)
Nach dem Login kopieren

Fazit

  1. $a ?? 0 entspricht isset( $a) ? $a : 0.

  2. $a ?: 0 entspricht $a ? $a : 0.

  3. leer: Bestimmen Sie, ob eine Variable leer ist (null, falsch, 00, 0, ‚0‘0‘, ‖ und dergleichen geben alle true zurück).

  4. isset: Bestimmen Sie, ob eine Variable gesetzt ist (Werte wie false, 00, 0, '0', ‖ geben ebenfalls true zurück).

Weitere Kenntnisse zum Thema Programmierung finden Sie unter: Einführung in die Programmierung! !

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen „??' und „?:' in PHP7?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage