Могу ли я назначить путь функции или более глубокое значение константе в классе?

Я где-то читал, что это невозможно, но мне интересно, есть ли еще один способ сделать это.

Прямо сейчас у меня есть следующее …

define('CUSTOM_THEME_BACKEND_PATH', get_stylesheet_directory());

Но я бы хотел, чтобы это было в классе, подобном следующему …

const CUSTOM_THEME_BACKEND_PATH = get_stylesheet_directory();

Тогда я могу запустить что-то вроде следующего …

MyConstantClass::CUSTOM_THEME_BACKEND_PATH . '/path/to/file'

В любом случае я могу назначить более сложные значения константе в классе?

Ссылка: http://php.net/manual/en/language.oop5.constants.php

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

Я хотел бы назначить что-то вроде выше, а также следующее …

const Option = get_options_data('custom-theme-custom-assets', 'enable-custom-skins');

Тогда, если я могу сделать что-то вроде следующего …

if (isset(MyConstantClass::Option) && MyConstantClass::Option == 'true'){}

Есть ли способ, которым я могу сделать это?

0

Решение

Вы можете использовать ключевое слово «mutable», чтобы изменить некоторые поля класса, и установить их в следующих строках.

Тем не менее, это очень нерегулярно и должно рассматриваться тщательно.

0

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

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

По вопросам рекламы [email protected]