Главная » Мастерская » Статьи » Документация по PHP

Константы

A constant is a identifier (name) for a simple value. As the name suggests, that value cannot change during the execution of the script. (The 'magic constants' __FILE__ and __LINE__ appear to be an exception to this, but they're not actually constants.) A constant is case-sensitive by default. By convention constant identifiers are always uppercase.

The name of a constant follows the same rules as any label in PHP. A valid constant name starts with a letter or underscore, followed by any number of letters, numbers, or underscores. As a regular expression, it would be expressed thus: [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f- \xff]*

Замечание: For our purposes here, a letter is a-z, A-Z, and the ASCII characters from 127 through 255 (0x7f-0xff).

The scope of a constant is global--you can access it anywhere in your script without regard to scope.

Syntax

You can define a constant by using the define()-function. Once a constant is defined, it can never be changed or undefined.

Only scalar data (boolean, integer, float and string) can be contained in constants.

You can get the value of a constant by simply specifying its name. Unlike with variables, you should not prepend a constant with a $. You can also use the function constant(), to read a constant's value, if you are to obtain the constant's name dynamically. Use get_defined_constants() to get a list of all defined constants.

Замечание: Constants and (global) variables are in a different namespace. This implies that for example TRUE and $TRUE are generally different.

If you use an undefined constant, PHP assumes that you mean the name of the constant itself. A notice will be issued when this happens. Use the defined()-function if you want to know if a constant is set.

These are the differences between constants and variables:

Constants do not have a dollar sign ($) before them;

Constants may only be defined using the define() function, not by simple assignment;

Constants may be defined and accessed anywhere without regard to variable scoping rules;

Constants may not be redefined or undefined once they have been set; and

Constants may only evaluate to scalar values.

Пример 1. Defining Constants

<?php
define("CONSTANT", "Hello world.");
echo CONSTANT; // outputs "Hello world."
echo Constant; // outputs "Constant" and issues a notice.
?&qt;

Predefined constants

PHP provides a large number of predefined constants to any script which it runs. Many of these constants, however, are created by various extensions, and will only be present when those extensions are available, either via dynamic loading or because they have been compiled in.

A list of predefined constants is available in the section Predefined constants.


Copyright ByWeb©
Hosted by uCoz