Страница 1 из 1
Проблема с константами и PHP
Добавлено: 03 авг 2015, 09:21
Cozyr
Добрый день. У меня возникла проблема следующего рода: хочу добавить в скрипте переменную $db (подкл. к mysqli) в константу DB, чтоба она во всех классах и прочих местах имела глобальную область видимости. Согласно
мануалу с версии PHP. 5.6
можно определять константы с типом array. Я переключил модуль в настройках сервера на нужную версию, но ошибка никуда не исчезла. Вот ее пример: "Warning: Constants may only evaluate to scalar values in..", что в переводе "Константы могут иметь только скалярные значения". В чем может быть проблема? На сервере все - таки нету 5.6?
Добавлено: 03 авг 2015, 12:03
AVATOR
Добавь код который у тебя выдаёт ошибку.
Добавлено: 03 авг 2015, 13:04
Cozyr
Хм, а причем тут код? Хотя гляди:
$db = new mysqli('localhost', 'root', '12345abc', 'base');
define('DB', $db); // выдаст ошибку если PHP < 5.6
// или вот пример
$arr = array('первый','второй','третий');
define('ARR', $arr); // выдаст ошибку если PHP < 5.6
В Open Server есть эта версия, но почему то константы не работают.
Добавлено: 04 авг 2015, 11:25
DelphinPRO
C
типом array - сам же написал. А в примере кода ты присваиваешь
переменную.
Вот так будет правильно:
const MY_CONST = [1, 2, 3];
Добавлено: 05 авг 2015, 06:12
Cozyr
Хм, такая мысль мне в голову не приходила.. Спасибо за помощь, теперь буду знать))