Константы php


Константы — это значения, которые не изменяются со временем. Ещё из школы Вы, наверняка, знаете многие константы, например, число п, число e, ускорение свободного падения и другие. И, разумеется, при программировании тоже очень часто возникает необходимость ввода констант. И о том, как создавать и использовать константы в PHP, мы и поговорим в этой статье.

Давайте с Вами создадим константу числа п:

<?php
  define(PI, 3.1415926);
  echo PI;
?>

Оператор define создаёт константу PI и присваивает ей значение 3.1415926. Дальше мы выводим эту константу через оператор echo. Всё очень просто, однако, есть одна рекомендация, которую я советую Вам всегда соблюдать. Обязательно пишите константы заглавными буквами. Не то, чтобы это было обязательно, но крайне желательно. И так принято не только в PHP, но и в других языках тоже.

Разумеется, впоследствии изменить константу PI будет нельзя (на то она и константа).

Теперь разберём одну функцию, которая проверяет: «Определена ли заданная константа«. Давайте напишем такой скрипт:

<?php
  if (!defined("PI")) define(PI, 3.1415926);
  echo PI;
?>


Здесь проверяется существование константы PI. И если она не существует (то есть функция define() вернула false), то тогда инициализируем эту константу. Затем просто выводим её.

Как видите, создавать и использовать свои константы в PHP — это очень просто.

И, напоследок, хочется рассказать об уже встроенных константах PHP. Давайте с Вами напишем простой скрипт:

<?php
  phpinfo();
?>

Ближе к концу есть раздел «PHP Variable«. Собственно, это не совсем константы, однако, они являются константами при выполнении данного скрипта. Разумеется, при выполнении другого скрипта они уже будут иметь другие значения (не все, разумеется). Давайте с Вами выведем пару констант, чтобы Вы поняли, как с ними работать, ведь они используются безумно часто:

<?php
  echo $_SERVER["REMOTE_ADDR"];
  echo "<br />";
  echo $_SERVER["QUERY_STRING"];
?>

В данном скрипте мы выводим IP-адрес пользователя, запустившего скрипт, а на следующей строке выводим строку запроса (например, «index.php?id=7«). Забегая немного вперёд, говорю, что здесь мы работаем с глобальным массивом $_SERVER. С массивами мы ещё познакомимся, но, думаю, что те, кто работал с массивами в других языках программирования, без проблем узнают синтаксис. Что же касается других констант, то с ними работа происходит аналогично.


myrusakov.ru

Привет. Сегодня решил написать о константах в PHP. Расскажу как константы работают, какие чаще всего применяются и бывают .

Что такое константы в контексте PHP?

Константы — это по сути переменные у которых нельзя переопределить значение. Т.е после указания их значения вы больше не сможете  его менять по ходу выполнения скрипта. Они как правило пишутся в верхнем регистре и в названии конкретно отражают хранимую в них информацию.

В PHP существует 2 разновидности констант:

  1. Обычные (задаются программистом)
  2. Предопределенные (задаются интерпретатором)

Обычные константы

Такой тип констант обычно используются как правило для служебных целей и создаются программистом в процессе написание кода.
Синтаксис создания обычной константы:

define('PI',3.1415);  

Создание константы происходит с помощью встроенной конструкции define ('Имя константы','Значение константы').

Для краткого пояснения механизма работы с константами покажу пример того что значения в константах задается один раз, и более не может быть изменено:

<?php define('PI',3.1415); define('PI',3.14); echo PI; // выведет 3.1415 ?>

Для того чтобы проверить существование константы в языке предусмотрена функция defined («CONST_NAME»).

<?php define("PI",31415); if(defined("PI")){  echo 'Константа существует'; }else{  echo 'Константа не определена'; } ?>

Предопределенные константы

Предопределенные константы отличаются от обычных способом создания. Они устанавливаются самим интерпретатором и меняют свое значение в контексте выполнения программы. Так же они не чувствительны к регистру, __CLASS__ или __class__ будут прекрасно выполнены интерпретатором.

Вот самые часто используемые предопределенные константы:

  • __FILE__ — хранит имя выполняемого на данный момент скрипта.
  • __FUNCTUIN__ — имя текущей функции.
  • __CLASS__ — имя текущего класса.
  • PHP_VERSION — содержит версию интерпретатора PHP.
  • TRUE, FALSE, NULL — содержат в себе значения соответствующие своему названию.

Для примера работы таких констант посмотрим на использование одной из них — __FUNCTION__ :

<?php function abc(){  return __FUNCTION__; } function xyz(){  return abc(); } echo xyz(); //Выведет abc ?>

Как можно видеть из примера константа __function__ вернула имя функции в которой она была первоначально вызвана — abc ().

И да, константу невозможно удалить как обычную переменную функцией unset (), она существует от начала и до конца выполнения программы.

На этом все, желаю успешной практики и хорошего настроения. До скорого.

dmkweb.ru Права на контент защищены.

dmkweb.ru

Константы

Константа — это некая неизменная величина. Константа объявляется одновременно с именем и значением. Для объявления константы служит функция define(), а для определения наличия константы (т.е. была она определена или нет) — функция defined(). Имя константы строится по тем же правилам, что и имена переменных.

Примеры констант:

Отдельный вид констант PHP — так называемые «магические константы». Это системные константы, значение которых определяет и устанавливает интерпретатор. Таких констант немного:


  • __LINE__ Содержит номер текущей строки в текущем файле.
  • __FILE__ Содержит полное имя текущего файла
  • __FUNCTION__ Содержит имя текущей функции.
  • __CLASS__ Содержит имя текущего класса.
  • __METHOD__ Содержит имя текущего метода текущего класса.

Эти константы очень удобны при отладке, но во всех других случаях их лучше не использовать, заменяя на вызовы соответствующих функций.

Константы phpР’ начало страницы

Константы phpР’ начало страницы

on-line-teaching.com

Проверка существования констант

Константы в PHP

Константой называется именованная величина, которая не изменяется в процессе выполнения программы.

В отличие от переменной, вы не можете изменить значение константы, которое было ей присвоено при её объявлении. Константы удобно использовать для хранения значений, которые не должны изменяться во время работы программы. Константы могут содержать только скалярные данные (логического, целого, плавающего и строкового типов).


В РНР константы определяются функцией define(). Эта функция имеет следующий формат:

define ($name, $value, $case_sen), где:

$name — имя константы;
$value — значение константы;
$case_sen — необязательный параметр логического типа,
указывающий, следует ли учитывать регистр букв (true) или нет (false).

Пример определения и использования констант в PHP:

<?php
define("pi",3.14,true);
echo pi;
// Выводит 3.14
?>

Если параметр $case_sen равен true, то интерпретатор будет учитывать регистр символов при работе с константой. Обратите внимание, что константы используются без предваряющего знака $.

Различия между константами и переменными:

· У констант нет приставки в виде знака доллара ($);

· Константы можно определить только с помощью функции define(), а не присваиванием значения;

· Константы могут быть определены и доступны в любом месте без учета области видимости;

· Константы не могут быть определены или аннулированы после первоначального объявления; и


· Константы могут иметь только скалярные значения.

Для проверки существования константы можно использовать функцию defined(). Данная функция возвращает true, если константа объявлена. Приведем пример:

<?php
// Объявляем константу pi
define("pi",3.14,true);
if (defined("pi")==true) echo "Константа pi объявлена!";
// Скрипт выведет ‘Константа pi объявлена!’
?>

В PHP существуют следующие предопределенные константы:

PHP предоставляет большой список предопределенных констант для каждого выполняемого скрипта. Многие из этих констант определяются различными модулями и будут присутствовать только в том случае, если эти модули доступны в результате динамической загрузки или в результате статической сборки.

Есть пять предопределенных констант, которые меняют свое значение в зависимости от контекста, в котором они используются. Например, константа __LINE__ зависит от строки в скрипте, на которой эта константа указана. Специальные константы нечувствительны к регистру и их список приведен ниже:

Имя Описание
__LINE__ Текущая строка в файле.
__FILE__ Полный путь и имя текущего файла.
__FUNCTION__ Имя функции. (Добавлена в PHP 4.3.0.)
__CLASS__ Имя класса. (Добавлена в PHP 4.3.0.)
__METHOD__ Имя метода класса. (Добавлена в PHP 5.0.0)

life-prog.ru

Всем доброго времени суток. На связи Алексей Гулынин. В прошлой статье мы разобрали оператор эквивалентности в PHP. В данной статье я бы хотел рассказать о константах в PHP. В школе вы не раз встречали константы, например "число PI" или из физики универсальная газовая постоянная (R). Константы один раз определяют и они уже не меняются. Тоже самое касается констант в программировании, т.е. мы один раз определяем константу и она больше не меняется в коде программы. Константами могут быть различные математические величины, пути до файлов.

Чем константа отличается от переменной:

1) Её определяют один раз и нигде больше нельзя присвоить значение,
2) Чтобы к ней обратиться, не нужно ставить знак "$" перед ней (здесь есть минус — теперь мы не можем использовать имя константы в текстовой строке).
Давайте выведем константу "PI":

  <?php  echo "Это константа ".M_PI; //M_PI как раз и содержит значение константы ПИ  ?>  

Константы бывают двух типов: определяемые интерпретатором и определяемые пользователем:


Примеры констант, определяемых интерпретатором:

1) __FILE__ — хранит имя файла, в котором находится тот код, который сейчас выполняется,
2) PHP_VERSION — версия интерпретатора PHP,
3) PHP_OS — версия операционной системы, под которой работает PHP.

Наберите следующий код и посмотрите, какие константы ещё бывают:

  <?php  phpinfo();  ?>  

Можно определять свои собственные константы, делается это с помощью оператора define. Давайте определим 2 константы:

  <?php  define("Const1", 101.5);  define("Const2", "Constanta");  echo Const1."</br>";  echo Const2;  ?>  

В данном случае у нас выведутся значения данных констант.

По умолчанию регистр символов в имени константы учитывается, его можно отключить с помощью необязательного третьего параметра, например так:

  <?php  define("New1", 2015, true);  echo nEw1."</br>";  echo neW1;  ?>  

Вы увидите, что всё работает (в предыдущем примере работать не будет, так как там учитывается регистр букв).

Обратите внимание на кавычки, в которых пишется имя константы. Это обязательно нужно делать. Также нельзя создавать константы с одинаковыми именами.


В PHP можно проверить существует константа или нет с помощью функции defined(имя константы). Давайте разберем на примере, чтобы стало понятно:

  <?php  define("Const1", 2015);  if (defined("Const1")) echo "Такая константа уже существует"; else define("Const1", 2016);  ?>  

Наберите данный пример и посмотрите, что будет.

Домашнее задание: создайте одну текстовую константу без учета регистра символов и одну числовую с учетом регистра. Проверьте существуют ли эти константы.

В данной статье вы узнали, что такое константы в PHP.

На связи был Алексей Гулынин, оставляйте свои комментарии, увидимся в следующих статьях.


alekseygulynin.ru

Константа в php, как и переменная, является ячейкой для хранения памяти. Константа — величина имеющая собственное имя, и не меняющаяся в процессе исполнения скрипта.

Применяются они, когда в программу нужно ввести пароль, путь к файлу, дату, и им подобные постоянные данные.

Определяется константа функцией define()

Пример:

Эта программа выведет на экран число 6548962

Рассмотрим составляющие:

«PAROL» — имя константы. Предпочтительно — заглавными буквами. Нельзя начинать цифрой.
6548962 — постоянное значение константы

Если при работе с константой необходимо будет учитывать регистр букв, то в скобки вводится значение параметра $case_sen — true

Пример использования констант на сайте: изображение шапки имеется на всех страницах сайта, и чтобы каждый раз не прописывать путь к файлу изображения, можно определить константу, присвоив ей это путь в значении, и затем использовать в нужной части скрипта

Кроме констант определяемых разработчиком, существуют константы, выставляемые интерпретатором. Это, например, сообщения об ошибках, указатели путей к файлам, а так же огромное количество констант объявленных в различных расширениях.

Список всегда доступных предопределённых констант

__LINE__ — текущая строка в файле
__FILE__ — полный путь и имя текущего файла
__FUNCTION__ — имя функции
__CLASS__ — имя класса
__METHOD__ — имя метода класса

Что такое предопределённая константа, вернее как она используется, хорошо понятно из примера вывода на экран сообщений об ошибках.

Браузер выведет такое сообщение.

Предопределённые константы в php

Как видите, константы сами определили путь к файлу и номер строки в которых, возможно, появится ошибка. Наверное поэтому их ещё называют волшебным константами.

Для проверки существования константы, применяется функция dtfined(). Аргументом для неё всегда является имя константы. Если константа объявлена, то результатом проверки будет true (истина), если нет — false (ложь).

На экран выведется одно из значений в зависимости от того, будет обнаружена константа, или нет.

В этом скрипте применён условный оператор выбора — If. Подробнее о нём поговорим в статье «Операторы php».

Помимо пользовательских и предопределённых констант, php поддерживает ещё один, очень редко применяемый и малоизвестный вид констант — динамические константы.

Как видно из прилагательного (динамические), и вопреки своему названию, константы всё таки могут меняться, и это ещё раз указывает на гибкость языка php.

Делается это при помощи функции rand(), которая генерирует случайное число от 1 до 10, в дальнейшем применяющееся для формирования константы.

Определяется значение такой константы только при помощи функции constant(). Эта же функция определяет и существование динамической константы, и если последняя не существует, то constant() выводит на экран предупреждение Warning.

Эта программа выведет на экран значение — единицу. Интересная штука в плане безопасности программы. В дальнейшем разберёмся с ней подробнее.

Короткий отдых
Перемена

— У тебя есть мечта?
— Есть.
— Какая?
— Хочу бросить пить.
— Так брось.
— Да? А как потом жить без мечты?

Переменные в PHP < < < В раздел > > > Операторы PHP

starper55plys.ru

В этой главе:

  • Определение констант

  • Область видимости и значения

  • Отличия констант от переменных

  • Проверка существования константы

Бывают случаи, когда переменные становится неудобно использовать для хранения значений, которые не должны меняться в течении всей работы программы. Такими значениями например могут быть: математические константы, путь к файлу, пароли и т.д. Для хранения именно таких значений, которые не должны изменяться в ходе работы программы предусмотрена такая конструкция, как «константа».

Определение констант

Константу можно определить с помощью ключевого слова const или с помощью функции define(), в качестве первого аргумента ей передается имя константы, в качестве второго — ее значение. Имя константы должно начинаться с буквы или символа подчеркивания и далее может состоять из букв, цифр и подчеркиваний. В отличие от переменных, перед именем константы знак доллара не ставится.

Примечание: константы, определенные с помощью ключевого слова const должны быть определены в самой верхней области видимости, так как они определяются при компилировании скрипта. Это значит, что их нельзя определять внутри циклов, функций, или оператора if.

Область видимости и значения

Константы имеют глобальную область видимости и могут принимать любое значение скалярного (простого) типа данных. Чтобы получить значение константы, достаточно просто обратиться к ее имени. Если имя константы формируется динамически, например хранится в качестве значения переменной или возвращается функцией, то чтобы получить значение константы, необходимо воспользоваться функцией constant(). Эта функция получает имя константы в качестве аргумента и возвращает ее значение.

Примечание: будьте внимательны при использовании констант со строками, так как имя константы не может быть использовано непосредственно в текстовой строке.

Отличия констант от переменных

В списке указана разница между константами и переменными:

  • По соглашению между разработчиками имена констант принято записывать в верхнем регистре.

  • В отличие от переменных, имена констант не начинаются со знака доллара ($).

  • Константа определяется с помощью ключевого слова const или функции define().

  • После определения константы, она доступна из любой области видимости, поэтому ее можно использовать в любом месте вашего сценария, не обращая никакого внимания на текущую область видимости.

  • После определения константу нельзя переопределить с другим значением.

  • Константы могут иметь только скалярные значения (boolean — булево значение, integer — целые числа, float — вещественные числа и string — строки).

  • В отличие от переменной, константа не может быть удалена.

Проверка существования константы

В PHP есть функция defined(string имя_константы), которая проверяет существует ли (была ли определена ранее) константа с указанным именем. Она возвращает true, если константа с указанным именем уже была определена.

laptev-alex.ru

Константа — это просто символьное имя для значения, которое обеспечивает возможность получить значение по имени, то есть, когда в программе указывается имя константы вместо неё подставляется значение.

Значение константы представляет собой фиксированное значение, которое не может быть изменено во время выполнения программы.

При использовании констант необходимо учитывать следующие правила:

  • Перед именем константы не нужно ставить знак доллара.
  • По умолчанию имена констант чувствительны к регистру символов, это означает, что имена some_const, Some_const или SOME_CONST будут считаться, как имена трёх различных констант.
  • Константы могут иметь значения только следующих типов: boolean, integer, float, string, NULL и массивы.
  • Константы не работают внутри строк.
  • Константы доступны из любой области видимости, это означает, что их можно использовать в любом месте сценария.
  • Константа не может быть удалена.
  • Имена констант условились писать заглавными буквами.

Создать константу можно двумя способами: с помощью функции define() или с помощью ключевого слова const, за которым следует имя константы:

  <?php  // С помощью функции define()  define("SAY_HI", 'Hello!');    // С помощью ключевого слова const  const PI = 3.1416;    function foo() {   echo "<br>Число: ", PI;  }    foo(); // Число: 3.1416    echo "Число: PI <br>"; // Число: PI  echo "Число: ".PI; // Число: 3.1416  ?>  

Константы, создаваемые с помощью ключевого слова const создаются во время компиляции сценария. Это означает, что их нельзя определять внутри функций, циклов, условных инструкций и блоков try/catch.

Константы, создаваемые с помощью функции define() могут быть определены в любом месте, так как они создаются во время выполнения сценария:

  <?php  function foo() {   define("NUM", 10);  }    foo();  echo NUM;  ?>  

puzzleweb.ru


You May Also Like

About the Author: admind

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.