我的代码是这样的
class Some extends Another {
    var $first = "Hello";
    var $second = "Hello";
}我想把$first放到$second上,这样我就可以把它放上去了?我尝试了以下几种方法
class Some extends Another {
    var $first = "Hello";
    var $second = "Hello $first";
}但我发现了以下错误
syntax error, unexpected '"'那就有这个可能了吗?
发布于 2014-01-20 04:47:52
我不相信您可以引用这样的类成员--您必须在构造函数中设置$second:
class Some
{
    public $first = "Hello";
    public $second;
    public function __construct()
    {
        $this->second = "Hello {$this->first}";
    }
}不过,一个更现实的方法来处理这个特定的例子应该是这样的:
class Some
{
    public $first = 'Marty';
    public function getSecond()
    {
        return "Hello {$this->first}";
    }
}发布于 2014-01-20 04:39:48
class Some extends Another {
    var $first = "Hello";
    var $second = "Hello $first";
}这会导致错误,因为不能使用表达式的结果来初始化对象中的属性,只能使用静态值。如果您想要执行类似示例的操作,则必须在构造函数中执行。
发布于 2014-01-20 04:41:14
$first = "hello1";
$second = "hello2";
$second = "hello2".$first;
echo $second;解释是,如果需要将第一个变量的值追加到第二个变量中,则这样做意味着字符串值,然后是点,然后是不带引号的第一个变量。
https://stackoverflow.com/questions/21226326
复制相似问题