Heim Backend-Entwicklung PHP-Problem Einführung in den PHP-Referenzfall (&).

Einführung in den PHP-Referenzfall (&).

Feb 21, 2020 pm 05:57 PM
php

Einführung in den PHP-Referenzfall (&).Variablenreferenz

Fall:

<?php
//变量单独引用
$test = "a string!\n";
$quote = &$test;

echo $test; //a string!
echo $quote;//a string!

$quote = "exchange!\n";
echo $test; //exchange!
echo $quote;//exchange!

unset($quote);
echo $test; //exchange!

//函数传参引用
$num = 10;
echo $num."\n";
test($num);
echo $num."\n";

function test( &$num) {
    $num += 10;
}
Nach dem Login kopieren

Schlussfolgerung

Die Variablenreferenz von PHP entspricht verschiedenen Variablen, die auf denselben Inhalt verweisen. Dieser Inhalt wird ebenfalls bearbeitet. Wenn einer der Verweise gelöscht wird, ist der andere Verweis nicht betroffen. Dies ist gleichbedeutend damit, dass die gelöschte Variable nicht mehr auf denselben Inhalt verweist, aber es kann keine Konstante sein. (Entspricht einer Person mit mehreren Namen. Das rechtzeitige Entfernen eines Namens wirkt sich nicht auf die Person als Ganzes aus.)

Empfohlen: PHP-Schulung

Funktionsreferenz Return

Fall 1:

<?php

$t = test(); // 1
var_dump($t); // int(1)
$t = 20; $t = test(); //2
var_dump($t); //int(2)
$t = &test(); //3
var_dump($t) ; //int(3)
$t = 20; $t = test(); //21
var_dump($t); //int(21)

function &test() {
    static $test = 0;
    $test += 1;
    echo $test."\n";
    
    return $test;   
}
Nach dem Login kopieren

Fall 2:

?php

$t = test();

function &test() {
    static $test = 0;
    $test += 1;
    echo $test."\n";
}


$ php test.php 
1
PHP Notice:  Only variable references should be returned by reference in /home/q/www/zt.dujia.qunar.com/test.php on line 9
Nach dem Login kopieren

Schlussfolgerung:

entspricht $t = &test;, um es ganz klar auszudrücken , es ist immer noch eine variable Referenz zwischen.

Objektreferenz

Fall:

<?php
class a{
    var $abc="ABC";
} 
$b=new a; 
$c=$b; 
echo $b->abc;//这里输出ABC 
echo $c->abc;//这里输出ABC
 $b->abc="DEF"; 
echo $c->abc;//这里输出DEF
?>
Nach dem Login kopieren

Referenz ist eigentlich ein Variablenraum, dem mehrere Operationsnamen zugewiesen werden Zeigen Sie auf denselben Operationsraum. Wenn ein Operationsname auf seinem Raum arbeitet, ändern sich auch die von anderen Operationsnamen erzielten Ergebnisse.

Die Rolle der Referenz:

Im Allgemeinen nimmt eine Variable jedes Mal, wenn sie deklariert wird, einen bestimmten Platz ein.

Durch die praktische Übergabe von Funktionsparametern kann der Inhalt des ursprünglichen Speicherplatzes direkt geändert und gleichzeitig der Speicherplatzaufwand für Zwischenvariablen verringert werden.

Weitere Informationen zu PHP finden Sie auf der Website kostenloses PHP-Training.

Das obige ist der detaillierte Inhalt vonEinführung in den PHP-Referenzfall (&).. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Heiße Artikel -Tags

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian

CakePHP Datum und Uhrzeit CakePHP Datum und Uhrzeit Sep 10, 2024 pm 05:27 PM

CakePHP Datum und Uhrzeit

CakePHP-Datei hochladen CakePHP-Datei hochladen Sep 10, 2024 pm 05:27 PM

CakePHP-Datei hochladen

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

CakePHP-Routing

CakePHP-Projektkonfiguration CakePHP-Projektkonfiguration Sep 10, 2024 pm 05:25 PM

CakePHP-Projektkonfiguration

Besprechen Sie CakePHP Besprechen Sie CakePHP Sep 10, 2024 pm 05:28 PM

Besprechen Sie CakePHP

CakePHP-Kurzanleitung CakePHP-Kurzanleitung Sep 10, 2024 pm 05:27 PM

CakePHP-Kurzanleitung

So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein Dec 20, 2024 am 11:31 AM

So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein

See all articles