PHP const, константные выражения разрешены в const php 7.1?

Следующее действительно.

const BIT_c5 = 1 << 5;

Следующее недействительно.

$data_x =10;
$data_y = 20;

const DATA_Y = $data_x + $data_y;

Может кто-нибудь объяснить, почему?

-1

Решение

Это есть в документация, что при определении константы она должна основываться на постоянная выражение, а не переменные и т. д.

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

Таким образом, вы можете определить константу и присвоить ей неизменное значение на основе литералов и выражений, включающих литералы. Но вы не можете использовать переменные (и / или выражения, включающие переменные), чтобы присвоить значение константе.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector