Konstante ist ein Name, der einfachen Wert (Zahl, Text), die nicht während der Codeausführung ändern sollte. Konstanten sind Groß-und Kleinschreibung und guten Programmierstil verlangt verwenden sie in Großbuchstaben.
define("FOO", "something");
Während die Ausführung des Skripts große Anzahl von Konstanten ist von PHP-Engine definiert. Zum Beispiel, M_PI (3,1415926535898).
Ausnahme ist Magie Konstanten, die Wert darauf an, wo sie beantragt werden [2].
Lassen Sie uns einen Blick auf ein Beispiel:
<?php $s = new Sample; $s->test(123); class Sample { function test($arg) { echo __LINE__ . "<br>"; echo __FILE__ . "<br>"; echo __DIR__ . "<br>"; echo __FUNCTION__ . "<br>"; echo __CLASS__ . "<br>"; echo __METHOD__ . "<br>"; echo __NAMESPACE__ . "<br>"; } }
Constant |
Description |
Value |
PHP_VERSION |
|
5.2.6 |
__LINE__ |
he current line number of the file. |
9 |
__FILE__ |
The full path and filename of the file. |
/var/www/sample.php |
__DIR__ |
The directory of the file. Equivalent dirname(__FILE__). Available since 5.3.0 |
__DIR__ |
__FUNCTION__ |
This constant returns the function name as it was declared. |
test |
__CLASS__ |
This constant returns the class name as it was declared. |
Sample |
__METHOD__ |
The method name is returned as it was declared. Available since 5.0.0 |
Sample::test |
__NAMESPACE__ |
The name of the current namespace. Available since 5.3.0 |
__NAMESPACE__ |
Im Übrigen __LINE__ ist sehr nützlich, Erfassen von SQL-Abfragen Rückkehr Fehler. Beispiel:
$sql = 'SELECT * FROM nothing'; $result = mysql_query($sql) or die(mysql_error() . ' / #' . __LINE__ . ', ' . __FILE__ . '<pre>' . $sql . '</pre>');
Result:
No database selected / #15, /var/www/sample.php
SELECT * FROM nothing
Sources used:
1. http://www.php.net/manual/en/reserved.constants.php
2. http://www.php.net/manual/en/language.constants.predefined.php