Erfahren Sie, wie Sie acht häufig verwendete magische Konstanten in PHP verwenden (detaillierte Beispiele).

WBOY
Freigeben: 2023-04-10 19:14:02
Original
3990 Leute haben es durchsucht

Im vorherigen Artikel „Erklären Sie die Definition und Werterfassung von PHP-Konstanten“ haben wir das Grundwissen über Konstanten in PHP ausführlich vorgestellt. In diesem Artikel werfen wir einen Blick auf das relevante Wissen über magische Konstanten PHP. Ich hoffe, es hilft allen!

Erfahren Sie, wie Sie acht häufig verwendete magische Konstanten in PHP verwenden (detaillierte Beispiele).

Im vorherigen Artikel haben wir die Grundkenntnisse der einfachen Definition und Erfassung von Konstanten in PHP sowie einige magische Methoden kennengelernt. Werfen wir als Nächstes einen Blick auf das relevante Wissen über magische Konstanten, was sie sind und welche Hauptverwendungszwecke magische Konstanten haben.

Was sind magische Konstanten?

Um genau zu sein, sind Konstanten keine Konstanten, die nach ihrer Definition geändert werden können. Bei magischen Konstanten handelt es sich jedoch um einige von PHP vordefinierte Konstanten. Diese vordefinierten Konstanten können sich aufgrund von Änderungen an ihrem Speicherort ändern.

Viele vordefinierte Konstanten werden von PHP in jedem Skript bereitgestellt. Verschiedene Konstanten haben unterschiedliche Erweiterungsbibliotheken. Unter magischen Konstanten können spezielle vordefinierte Konstanten verstanden werden.

Das Schreibformat magischer Konstanten besteht normalerweise aus zwei Unterstrichen (__), die mit zwei Unterstrichen beginnen und mit zwei Unterstrichen enden, wie zum Beispiel: __LINE__, __FILE__ Code> usw. warten. Wenn es um das Schreibformat geht, müssen Sie wissen, dass bei magischen Konstanten die Groß-/Kleinschreibung nicht beachtet wird. Versuchen Sie jedoch, beim Schreiben Großbuchstaben zu verwenden. <code>__)开头两个下划线结尾,比如:__LINE____FILE__等等。讲到书写格式的话,需要知道,魔术常量不区分大小写,但是尽量书写的时候还是采用大写的形式。

魔术常量的使用

PHP的运行环境中提供了八个魔术常量,就像上文中说的,虽然被叫做常量,但准确来说不算是常量,他们的值随着代码中的变化而改变,接下来我们分别来看一下这八个魔术变量。

1.<strong><span style="font-size: 16px;">__LINE__ </span></strong> 表示文件中当前的行号

接下来我们通过示例来看一下__LINE__ 魔术常量的使用,并且看一下随着位置的变化魔术常量的值有什么变化。

示例如下:

<?php
echo &#39;这是第 " &#39; . __LINE__ . &#39; " 行<br/>&#39;;
echo &#39;这是第 " &#39; . __LINE__ . &#39; " 行<br/>&#39;;
echo &#39;---------------<br/>&#39;;
echo &#39;这是第 " &#39; . __LINE__ . &#39; " 行&#39;;
?>
Nach dem Login kopieren

输出结果:

Erfahren Sie, wie Sie acht häufig verwendete magische Konstanten in PHP verwenden (detaillierte Beispiele).

在上述示例中,我们通过魔术变量__LINE__就能够获取当前代码所在位置的行数。

其中需要注意的是:我们能够发现,当代码所在的位置不同,其所输出的结果也是不同的。所以我们上文中说了魔术常量并不能算是常量,它的值随着代码的变化而改变。我们接着往下看:

2.__FILE__ 表示文件的绝对路径

通过__FILE__能够获取文件的绝对路径,并且这个路径包含了文件名。其中需要注意的是,如果该魔术常量用在了包含文件中,那么返回的结果是被包含的文件名。

下面我们通过示例来看一下__FILE__的使用,示例如下:

<?php
echo &#39;该文件位于 " &#39; . __FILE__ . &#39; " &#39;;
?>
Nach dem Login kopieren

输出结果:

Erfahren Sie, wie Sie acht häufig verwendete magische Konstanten in PHP verwenden (detaillierte Beispiele).

在上述示例中我们便是通过__FILE__完成了对文件绝对路径的获取。

3.__DIR__ 用于表示文件所在目录

通过__DIR__能够获取文件所在的目录,这个文件所在的目录与__FILE__获取文件的绝对路径还是不一样的,文件所在的目录是不带有当前文件的文件名的。也可以把该魔术常量理解为 dirname(__FILE__)

下面我们通过示例来看一下__DIR__魔术常量的使用,示例如下:

<?php
echo &#39;该文件位于 " &#39; . __DIR__ . &#39; " &#39;;
echo  dirname(__FILE__);
?>
Nach dem Login kopieren

输出结果:

Erfahren Sie, wie Sie acht häufig verwendete magische Konstanten in PHP verwenden (detaillierte Beispiele).

上述示例中我们通过两种方法,都获取到了当前文件所在的目录,一个是通过__DIR__魔术常量,另一个是dirname(__FILE__),它们俩能够达到的效果是相同的。

4.__FUNCTION__ 用于获取当前函数名或方法名

通过__FUNCTION__

Verwendung magischer Konstanten


PHP stellt acht magische Konstanten in der laufenden Umgebung bereit, obwohl sie, um genau zu sein, als Konstanten bezeichnet werden, je nach Code variieren. Schauen wir uns diese acht magischen Variablen aufgrund von Änderungen separat an. Erfahren Sie, wie Sie acht häufig verwendete magische Konstanten in PHP verwenden (detaillierte Beispiele).


1.

🎜🎜<span style="font-size: 16px;">__LINE__ 🎜🎜🎜 stellt die aktuelle Zeilennummer in der Datei dar 🎜🎜🎜🎜 Schauen wir uns als Nächstes die Verwendung der magischen Konstanten __LINE__ anhand von Beispielen an und sehen, wie sich die Magie mit dem ändert Position Was passiert mit dem Wert der Konstante? 🎜🎜Das Beispiel sieht wie folgt aus: 🎜
<?php
function test() {
 echo &#39;通过__FUNCTION__获取的函数名为:&#39; . __FUNCTION__ ;
}
test();
?>
Nach dem Login kopieren
🎜Ausgabeergebnis: 🎜🎜🎜Erfahren Sie, wie Sie acht häufig verwendete magische Konstanten in PHP verwenden (detaillierte Beispiele).🎜🎜Im obigen Beispiel können wir die Zeilennummer der aktuellen Codeposition über die magische Variable __LINE__ abrufen. 🎜🎜Was beachtet werden muss, ist: Wir können feststellen, dass bei unterschiedlicher Position des Codes auch die Ausgabeergebnisse unterschiedlich sind. Daher haben wir oben gesagt, dass magische Konstanten nicht als Konstanten betrachtet werden und sich ihre Werte ändern, wenn sich der Code ändert. Schauen wir nach unten: 🎜🎜🎜2.__FILE__ stellt den absoluten Pfad der Datei 🎜🎜🎜🎜 bis __FILE__ dar Der absolute Pfad der Datei kann ermittelt werden, und dieser Pfad enthält den Dateinamen. Es ist zu beachten, dass bei Verwendung der Magic-Konstante in einer eingebundenen Datei das zurückgegebene Ergebnis der Name der eingebundenen Datei ist. 🎜🎜Sehen wir uns die Verwendung von __FILE__ anhand eines Beispiels an. Das Beispiel sieht wie folgt aus: 🎜
<?php
class test {
 function _print() {
  echo &#39;通过__CLASS__获取的类名为:&#39; . __CLASS__ . "<br>";
  echo &#39;通过__FUNCTION__获取的函数名为:&#39; . __FUNCTION__ ;
 }
}
$t = new test();
$t->_print();
?>
Nach dem Login kopieren
Nach dem Login kopieren
🎜Ausgabeergebnis: 🎜🎜🎜Erfahren Sie, wie Sie acht häufig verwendete magische Konstanten in PHP verwenden (detaillierte Beispiele).🎜🎜Im obigen Beispiel verwenden wir __FILE__, um den absoluten Pfad der Datei zu erhalten. 🎜🎜🎜3.__DIR__ wird verwendet, um das Verzeichnis anzugeben, in dem sich die Datei befindet. 🎜🎜🎜🎜🎜kann über 🎜 abgerufen werden __DIR__🎜 Das Verzeichnis, in dem sich die Datei befindet, unterscheidet sich immer noch vom absoluten Pfad, den __FILE__ zum Abrufen der Datei verwendet. Das Verzeichnis, in dem sich die Datei befindet, hat nicht den Dateinamen der aktuellen Datei. Diese magische Konstante kann auch als dirname(__FILE__) verstanden werden. 🎜🎜Sehen wir uns die Verwendung der magischen Konstante __DIR__ anhand eines Beispiels an. Das Beispiel sieht wie folgt aus: 🎜
<?php
class Base {
 public function sayHello() {
  echo &#39;Hello &#39;;
 }
}
trait SayWorld {
 public function sayHello() {
  parent::sayHello();
  echo &#39;World!&#39;;
 }
}
class MyHelloWorld extends Base {
 use SayWorld;
}
$o = new MyHelloWorld();
$o->sayHello();
?>
Nach dem Login kopieren
Nach dem Login kopieren
🎜Ausgabeergebnis: 🎜🎜🎜Erfahren Sie, wie Sie acht häufig verwendete magische Konstanten in PHP verwenden (detaillierte Beispiele).🎜🎜Im obigen Beispiel haben wir das Verzeichnis, in dem sich die aktuelle Datei befindet, über zwei Methoden erhalten, eine davon Durch die magische Konstante __DIR__ ist die andere dirname(__FILE__), beide können den gleichen Effekt erzielen. 🎜🎜🎜4.__FUNCTION__ wird verwendet, um den aktuellen Funktionsnamen oder Methodennamen abzurufen🎜🎜🎜🎜kann über __FUNCTION__< abgerufen werden /code> Der Name der aktuellen Funktion oder Methode. Schauen wir uns als Nächstes die Verwendung der magischen Konstante __FUNCTION__ anhand eines Beispiels an. 🎜🎜Das Beispiel lautet wie folgt: 🎜<div class="code" style="position:relative; padding:0px; margin:0px;"><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">&lt;?php function testMethod() { echo &amp;#39;当前的函数名为:&amp;#39; . __METHOD__ . PHP_EOL . &amp;#39;&lt;br/&gt;&amp;#39;; } class TestMethodClass { function testMethod1() { echo &amp;#39;当前的方法名和类名为:&amp;#39; . __METHOD__ . PHP_EOL; } } testMethod(); $test = new TestMethodClass(); $test-&gt;testMethod1(); ?&gt;</pre><div class="contentsignin">Nach dem Login kopieren</div></div><div class="contentsignin">Nach dem Login kopieren</div></div>🎜Ausgabeergebnis: 🎜🎜🎜🎜🎜🎜Durch das obige Beispiel wissen wir, dass __FUNCTION__ den Funktionsnamen der aktuellen Funktion abrufen kann. 🎜🎜<p><strong><span style="font-size: 16px;">5.<code>__CLASS__ 用于获取当前的类名

通过__CLASS__可以用于获取当前的类名,齐总也包括了当前类的作用区域或命名空间。接下来我们通过示例来看一下__CLASS__的使用。

示例如下:

<?php
class test {
 function _print() {
  echo &#39;通过__CLASS__获取的类名为:&#39; . __CLASS__ . "<br>";
  echo &#39;通过__FUNCTION__获取的函数名为:&#39; . __FUNCTION__ ;
 }
}
$t = new test();
$t->_print();
?>
Nach dem Login kopieren
Nach dem Login kopieren

输出结果:

Erfahren Sie, wie Sie acht häufig verwendete magische Konstanten in PHP verwenden (detaillierte Beispiele).

通过上述示例已经了解在PHP中可以通过__CLASS__来获取当前的类名。

6.__TRAIT__ 当前的trait名称

通过__TEAIT__能够表示当前的trait名称,这其中包括了trait的作用区域或者命名空间。接下来我们通过示例来看一下__TRAIT__的使用。

示例如下:

<?php
class Base {
 public function sayHello() {
  echo &#39;Hello &#39;;
 }
}
trait SayWorld {
 public function sayHello() {
  parent::sayHello();
  echo &#39;World!&#39;;
 }
}
class MyHelloWorld extends Base {
 use SayWorld;
}
$o = new MyHelloWorld();
$o->sayHello();
?>
Nach dem Login kopieren
Nach dem Login kopieren

输出结果:

Erfahren Sie, wie Sie acht häufig verwendete magische Konstanten in PHP verwenden (detaillierte Beispiele).

7.__METHOD__ 当前的方法名

通过__METHOD__能够获取当前的方法名,其中也包括类名,接下来我们通过示例来看一下__METHOD__的使用方法,示例如下:

<?php
function testMethod()
{
    echo &#39;当前的函数名为:&#39; . __METHOD__ . PHP_EOL . &#39;<br/>&#39;;
}
class TestMethodClass
{
    function testMethod1()
    {
        echo &#39;当前的方法名和类名为:&#39; . __METHOD__ . PHP_EOL; 
    }
}
testMethod();
$test = new TestMethodClass();
$test->testMethod1();
?>
Nach dem Login kopieren
Nach dem Login kopieren

输出结果:

Erfahren Sie, wie Sie acht häufig verwendete magische Konstanten in PHP verwenden (detaillierte Beispiele).

上述示例中,我们通过__METHOD__获取了函数名和方法名。其中方法名中包括了类名。

8.__NAMESPACE__ 当前文件的命名空间名称

通过__NAMESPACE__可以获取当前文件的命名空间名称,接下来我们通过示例来看一下,示例如下:

<?php
namespace MyProject;
echo &#39;命名空间为:"&#39;, __NAMESPACE__, &#39;"&#39;; 
?>
Nach dem Login kopieren

输出结果:

Erfahren Sie, wie Sie acht häufig verwendete magische Konstanten in PHP verwenden (detaillierte Beispiele).

到此我们便是通过示例将八种魔术常量了解了一下。

大家如果感兴趣的话,可以点击《PHP视频教程》进行更多关于PHP知识的学习。

Das obige ist der detaillierte Inhalt vonErfahren Sie, wie Sie acht häufig verwendete magische Konstanten in PHP verwenden (detaillierte Beispiele).. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
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
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!