PHP中static关键字原理的学习研究分析_php技巧
看PHP手册的时候发现了下面这样一段代码:
function Test()
{
static $count = 0;
$count++;
echo $count;
if ($count Test();
}
$count--;
}
?>
执行结果如下:
这是一个递归的函数,声明的静态变量count记录次数,输出1~10。
我在看的时候有个疑惑,递归调用的时候 static $count = 0; 语句会重复执行,这为什么不会导致count变量被重复赋值呢?带着这个疑问和同事研究了一下,测试用代码如下:
echo 'start
';
static $a = 10;
echo "$a
";
unset($GLOBALS['a']);
echo "$a
";
static $a = 20;
echo "$a
";
$GLOBALS['a'] = 10;
echo "$a
";
static $a = 30;
echo "$a
";
unset($GLOBALS['a']);
echo "$a
";
static $a;
echo "$a
";
static $a = 40;
echo "$a
";
$a = 100;
echo "$a
";
static $a = 50;
echo "$a
";
static $a = 4;
echo "$a
";
echo 'end
';
exit;
?>
start
- 4
- Notice: Undefined variable: a
- 4
- 10
- 10
- Notice: Undefined variable: a
- 10
- 10
- 100
- 100
- 100
- end

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

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

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



Die Rolle und Verwendung von Statik in der C-Sprache: 1. Variablenbereich; Wenn das Schlüsselwort static vor einer Variablen steht, ist der Gültigkeitsbereich der Variablen auf die Datei beschränkt, in der sie deklariert ist. Mit anderen Worten, die Variable ist ein „Gültigkeitsbereich auf Dateiebene“, was sehr nützlich ist, um das „ zu verhindern. Problem der doppelten Definition von Variablen; 2. Lebenszyklus, statische Variablen werden einmal initialisiert, wenn die Ausführung des Programms beginnt, und zerstört, wenn das Programm endet usw.

1. static Bitte schauen Sie sich zuerst das folgende Programm an: publicclassHello{publicstaticvoidmain(String[]args){//(1)System.out.println("Hello, world!");//(2)}} Habe das gesehen Segmentprogramme sind den meisten Leuten bekannt, die Java studiert haben. Auch wenn Sie kein Java, aber andere Hochsprachen wie C gelernt haben, sollten Sie die Bedeutung dieses Codes verstehen können. Es gibt lediglich „Hallo Welt“ aus und hat keine andere Verwendung. Es zeigt jedoch den Hauptzweck des statischen Schlüsselworts.

Praktische Anwendungsszenarien und Verwendungsfähigkeiten des Schlüsselworts static in der C-Sprache 1. Übersicht static ist ein Schlüsselwort in der C-Sprache, das zum Ändern von Variablen und Funktionen verwendet wird. Seine Funktion besteht darin, seinen Lebenszyklus und seine Sichtbarkeit während der Programmausführung zu ändern und Variablen und Funktionen statisch zu machen. In diesem Artikel werden die tatsächlichen Anwendungsszenarien und Verwendungstechniken des statischen Schlüsselworts vorgestellt und anhand spezifischer Codebeispiele veranschaulicht. 2. Statische Variablen verlängern den Lebenszyklus von Variablen. Die Verwendung des Schlüsselworts static zum Ändern lokaler Variablen kann deren Lebenszyklus verlängern.

Die Funktionen von Static: 1. Methoden; 3. Andere Verwendungen; Optimierung des Speicherlayouts; 11. Vermeiden Sie wiederholte Initialisierung. 12. Verwendung in Funktionen. Detaillierte Einführung: 1. Variablen, statische Variablen. Wenn eine Variable als statisch deklariert wird, gehört sie zur Klassenebene und nicht zur Instanzebene. Dies bedeutet, dass unabhängig von der Anzahl der erstellten Objekte nur eine statische Variable und alle Objekte vorhanden sind Teilen Sie diese statischen Variablen usw.

Modifikator abstract (abstract) 1. Abstract kann eine Klasse ändern (1) Die durch abstract geänderte Klasse wird als abstrakte Klasse bezeichnet (2) Syntax: abstractclass-Klassenname {} (3) Funktionen: Abstrakte Klassen können keine Objekte separat erstellen, sie können jedoch (4) Abstrakte Klassen können Mitgliedsvariablen und Mitgliedsmethoden definieren. Wenn sie zum Erstellen von Unterklassenobjekten verwendet werden, erstellt jvm standardmäßig ein übergeordnetes Klassenobjekt apply Wird angewendet, wenn JVM ein übergeordnetes Klassenobjekt erstellt. 2. Abstrakt kann Methoden ändern (1) Die durch asbtract geänderte Methode wird als abstrakte Methode bezeichnet (2) Syntax: Zugriffsmodifikator abstrakter Rückgabewert

Springboot liest die Pro-Datei und fügt statische statische Variablen ein mailConfig.properties#Server mail.host=smtp.qq.com#Portnummer mail.port=587#E-Mail-Konto mail.userName=hzy_daybreak_lc@foxmail.com#E-Mail-Autorisierungscode-Mail. passWord =vxbkycyjkceocbdc#Zeitverzögerung mail.timeout=25000#Sender mail.emailForm=hzy_daybreak_lc@foxmail.com#Sender mai

Das „statische“ in den statischen PHP-Methoden bedeutet, dass diese Eigenschaften und Methoden direkt aufgerufen werden können, ohne die Klasse zu instanziieren. „static“ ist ein Schlüsselwort, das zum Ändern der Eigenschaften und Methoden der Klasse verwendet wird, und seine Verwendungssyntax lautet beispielsweise „class Foo { public static $my_static = 'hello';}".

PHP ist eine beliebte serverseitige Open-Source-Skriptsprache, die in der Webentwicklung weit verbreitet ist. Die PHP-Sprache ist nicht nur einfach zu erlernen und zu verwenden, sondern unterstützt auch eine Vielzahl von Programmierparadigmen, objektorientierte Programmierung, funktionale Programmierung usw. In PHP gibt es einige spezielle Syntaxschlüsselwörter wie Static, Final, Abstract usw. Diese Schlüsselwörter haben spezielle Funktionen in der objektorientierten Programmierung. In diesem Artikel werden diese Schlüsselwörter ausführlich vorgestellt. Static-Schlüsselwort In PHP hat das Static-Schlüsselwort zwei Verwendungszwecke
