php中const的意思,php – 在const中使用const

我有一点PHP必须生成一个脚本.部分内容非常静态,但数据是即时生成的.我曾经在另一种语言中遇到过类似的问题并使用不断的替代品来解决它.

我正在尝试做什么:

interface IConstants {

const SUBSTITUTE = '!substitute';

const FULL_STRING = 'var data = "' . self::SUBSTITUTE . '";';

}

class Util {

public static function replace($haystack, $needle, $replace) {

// implementation

}

}

class SampleClass {

public function getScript() {

$someData = $this->getData();

return Util::replace(IConstants::FULL_STRING, IConstants::SUBSTITUTE, $someData);

}

public function getData() {

// generate $someData

return $someData;

}

}

这个设计是否被PHP接受?如果是,我将如何实施它,如果不是,那么什么是合适的替代方案?

解决方法:

在5.6之前的PHP版本中,您无法执行此操作.在那些版本的PHP中,从constituant部分构建常量的唯一方法是使用define().我必须仔细查看,但我认为你不能使用define()来定义类/接口常量.

从PHP 5.6开始,您将能够定义这样的常量,但前提是它们是根据其他常量定义的.

标签:php,const,design-patterns

来源: https://codeday.me/bug/20190830/1768849.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值