PHP获取";未定义的变量和;空置物业;代码错误
可能重复:PHP获取";未定义的变量和;空置物业;代码错误,php,Php,可能重复: 我已经把这个错误减少到了最小的代码量,而且它太小了,我真的觉得自己很愚蠢 我有两个文件class1.php: 1 <?php 2 class insertText{ 3 //properties 4 protected $paragraph1='<p>this is a test paragraph</p>'; 5 protected $bigHeader='<h1>hea
我已经把这个错误减少到了最小的代码量,而且它太小了,我真的觉得自己很愚蠢 我有两个文件class1.php:
1 <?php
2 class insertText{
3 //properties
4 protected $paragraph1='<p>this is a test paragraph</p>';
5 protected $bigHeader='<h1>header1</h>';
6 protected $textArray;
7
8 public function __construct () {
9 $this->$textArray = array($this->$bigHeader1, $this->$paragraph1);
10 }
11 public function getText(){
12 return $this->$textArray;
13 }
14 }
15 ?>
我知道这是一个简单的答案,我搜索了每一篇带有错误信息的帖子。我甚至尝试将文本分配到变量的操作移动到构造函数中,但没有成功。您需要使用:
$this->textArray = array($this->bigHeader1, $this->paragraph1);
…而不是
$this->$textArray = array($this->$bigHeader1, $this->$paragraph1);
i、 e.
$this->$bigHeader1
中的第二个美元符号是多余的。(实际上,您正试图访问将在$bigHeader1
变量中定义的类元素,而不是类实例变量本身。)噢,天哪,我知道这一定是个愚蠢的答案。很抱歉浪费您的时间。@Dano别担心,我们都会时不时地犯这样的错误。:-)同样,您的受保护变量是$bigHeader
,但您在构造函数中将其称为$bigHeader1
(请注意1
)。除了尝试回显数组(已更改为打印)之外,我仍然收到相同的错误消息。这是代码code
您仍然有$this->$textArray
,这是不正确的。应该是$this->textArray
(textArray上没有$
)bigheader1在哪里?您已经引用了第1段。。。有可能吗?
$this->textArray = array($this->bigHeader1, $this->paragraph1);
$this->$textArray = array($this->$bigHeader1, $this->$paragraph1);