php5.4传引用时报错问题分析_php技巧
本文实例分析了php5.4传引用时报错问题。分享给大家供大家参考,具体如下:
php5.3系列版本以及以前版本,传引用没有什么问题,升级到php5.4以后,传引用的地方,全报错
Fatal error: Call-time pass-by-reference has been removed in F:\work\wamp\www\test\test.php on line 6。看一下下面的例子。
例1,递归传引用,在php 5.3及以及版本,测试结果
<?php function test($aa,&$bb){ if($aa < $bb){ echo $bb."<br>"; $bb--; test($aa,&$bb); } } $aa = 3; $bb = 6; test($aa,&$bb); ?>
运行结果如下
6
5
4
php 5.4以后就不行了,我是用php 5.4.11测试的。报Fatal error: Call-time pass-by-reference has been removed in F:\work\wamp\www\test\test.php on line 6。
例2,php5.4.11上面测试,只测试传引用
<?php function test($aa,&$bb){ if($aa < $bb){ $bb--; echo $bb."<br>"; //test($aa,&$bb); } } $aa = 3; $bb = 6; test($aa,$bb); //php5.4,php5.3及以前版本,输入结果是5 //test($aa,&$bb); //php5.3输入结果是5,php5.4及以后,报错Fatal error: Call-time pass-by-reference 。。。。 ?>
php5.4以后,定义时可以有&,调用时加上&就会报错。这样调用感觉很怪。
例3,php5.4以及递归传引用
<?php function test($aa,&$bb){ if($aa < $bb){ $bb--; echo $bb."<br>"; test($aa,$bb); } } $aa = 3; $bb = 6; test($aa,$bb); ?>
php5.2,php5.3,php5.4都可以运行,运行结果:
5
4
3
感觉这个5.3升到5.4有点坑爹,如果不知道改变的,升级就很郁闷了。
更多关于PHP错误与异常相关内容感兴趣的读者可查看本站专题:《PHP错误与异常处理方法总结》
希望本文所述对大家PHP程序设计有所帮助。

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

So beheben Sie den MySQL-Fehler: Die Anzahl der Spalten stimmt nicht mit dem Wert überein. Wenn Sie die MySQL-Datenbank für Datenoperationen verwenden, wird manchmal die Fehlermeldung „Columncountdoesn'tmatchvaluecountatrow1“ angezeigt Anzahl der Spalten stimmt nicht mit der Anzahl der Werte überein. Dieser Fehler tritt normalerweise auf, wenn Daten eingefügt werden und die Anzahl der angegebenen Spalten nicht mit der Anzahl der eingefügten Werte übereinstimmt. In diesem Artikel werden spezifische Problemumgehungen beschrieben und Codebeispiele bereitgestellt. prüfen

So beheben Sie den MySQL-Fehler: Falsche Tabellendefinition; es kann nur eine automatische Spalte geben, die als Schlüssel definiert werden muss. In den letzten Jahren wird die MySQL-Datenbank immer häufiger verwendet , wir stoßen oft auf verschiedene Fehlermeldungen. Ein häufiger Fehler ist „falsche Tabellendefinition; es kann nur eine automatische Spalte geben und diese muss als Schlüssel definiert werden“. Dieser Fehler tritt normalerweise auf, wenn wir eine Tabelle erstellen, was für Anfänger Kopfschmerzen bereiten kann. In diesem Artikel werden die Gründe für diesen Fehler detailliert analysiert und konkrete Angaben gemacht

Zu den Lösungen für den MySQL-Fehler 10060 gehören die Überprüfung, ob der MySQL-Server normal läuft, die Überprüfung der Netzwerkverbindung, die Überprüfung der Firewall-Einstellungen, die Überprüfung der MySQL-Serverkonfiguration, die Überprüfung der MySQL-Benutzerberechtigungen, die Überprüfung der Netzwerkkonfiguration und die Überprüfung der maximalen Anzahl von Verbindungen des MySQL-Servers und verwenden Sie die IP-Adresse anstelle des Hostnamens und starten Sie den MySQL-Server neu usw. Detaillierte Einführung: 1. Überprüfen Sie, ob der MySQL-Server normal läuft. Stellen Sie zunächst sicher, dass der MySQL-Server läuft und den richtigen Port usw. überwacht.

Kurze Einführung in die Ursache des HTTP-Anfragefehlers: 504GatewayTimeout: Während der Netzwerkkommunikation interagiert der Client mit dem Server, indem er HTTP-Anfragen sendet. Allerdings kann es beim Absenden der Anfrage manchmal zu Fehlermeldungen kommen. Einer davon ist der 504GatewayTimeout-Fehler. In diesem Artikel werden die Ursachen und Lösungen für diesen Fehler untersucht. Was ist der 504GatewayTimeout-Fehler? GatewayTimeo

HTTP-Anfragefehler: Lösung für SocketError Bei Netzwerkanfragen treten häufig verschiedene Fehler auf. Eines der häufigsten Probleme ist SocketError. Dieser Fehler wird ausgegeben, wenn unsere Anwendung keine Verbindung mit dem Server herstellen kann. In diesem Artikel besprechen wir einige häufige Ursachen und Lösungen für SocketError. Zuerst müssen wir verstehen, was Socket ist. Socket ist ein Kommunikationsprotokoll, das Anwendungen ermöglicht

Unknowncolumn'column_name'in'whereclause' – So beheben Sie den MySQL-Fehler: Unbekannte Spalte in der Where-Klausel. Es sind spezifische Codebeispiele erforderlich. MySQL ist ein weit verbreitetes relationales Datenbankverwaltungssystem, das die Verwendung von Structured Query Language (SQL) unterstützt. Speicherung, Verwaltung und Abruf von Daten. Bei der Verwendung von MySQL zum Abfragen treten jedoch manchmal Fehler auf. Einer der häufigsten Fehler ist: Unkno

Unbekannte Datenbank „Datenbankname“ – So beheben Sie den MySQL-Fehler: Unbekannter Datenbankname, spezifische Codebeispiele sind erforderlich. Bei der Verwendung von MySQL wird manchmal die Fehlermeldung angezeigt: Unbekannte Datenbank „Datenbankname“. Diese Fehlermeldung weist darauf hin, dass MySQL die von Ihnen angegebene Datenbank nicht finden kann. Dies kann daran liegen, dass die Datenbank nicht vorhanden ist oder Sie keine Berechtigung zum Zugriff auf die Datenbank haben. Im Folgenden untersuchen wir einige mögliche Ursachen und stellen spezifische Codebeispiele zur Behebung des Problems bereit. Daten

Wenn Sie Python lernen und GUI-Anwendungen entwickeln möchten, ist PyQt5 eine sehr gute Wahl. Es handelt sich um eine gebundene Version der PyQt-Bibliothek unter Python, was das Aufrufen und Entwickeln der Qt-Grafikbibliothek sehr bequem macht. Allerdings können bei der Installation von PyQt5 manchmal Probleme auftreten. In dieser Anleitung finden Sie einige Schritte zur schnellen Lösung von Installationsfehlerproblemen sowie spezifische Codebeispiele. Stellen Sie also zunächst sicher, dass die Python-Version korrekt ist. PyQt5 ist eine Python-basierte Bibliothek
