我必须将Twig模板转换回网站的PHP,所以我们基本上是在模仿功能。我从PHP中得到一个错误,突出显示了我的类属性$ link,该属性包含其他变量数组。
常量表达式包含无效的操作
我不明白为什么要突出显示此属性,但不能突出显示我的其他属性,直接位于名为$ downloadLink的下面。两者都是数组,除非我缺少什么。该错误最初并未突出显示,但直到后来我继续其余代码时才突出显示。
class Card {
public $title;
public $image;
public $text;
public $link = array(
$url,
$nale,
);
public $downloadLink = array(
$url,
$title,
$type,
$weight,
);
function __construct(string $title, string $image, string $text, array $link_arr, array $downloadLink_arr)
{
$this->title = $title;
$this->image = $image;
$this->text = $text;
$this->link->url = $link_arr[0];
$this->link->nale = $link_arr[1];
$this->downloadLink->url = $downloadLink_arr[0];
$this->downloadLink->title = $downloadLink[1];
$this->downloadLink->type = $downloadLink[2];
$this->downloadLink->weight = $downloadLink[3];
}
}
答案 0 :(得分:0)
这是PHP的基本知识。
您不能使用变量来初始化变量,并且当变量是数组时,您将尝试使用对象分配。
<?php
class Card
{
public $title;
public $image;
public $text;
public $link = array();
public $downloadLink = array();
public function __construct(string $title, string $image, string $text, array $link_arr, array $downloadLink_arr)
{
$this->title = $title;
$this->image = $image;
$this->text = $text;
$this->link['url'] = $link_arr[0];
$this->link['nale'] = $link_arr[1];
$this->downloadLink['url'] = $downloadLink_arr[0];
$this->downloadLink['title'] = $downloadLink[1];
$this->downloadLink['type'] = $downloadLink[2];
$this->downloadLink['weight'] = $downloadLink[3];
}
}