解析错误:语法错误

时间:2010-12-04 22:21:41

标签: php

我一直得到“解析错误:语法错误,意外'。',期待')'”在第一行,我已经尝试打破了字符串,但是它没有正确嵌入。有人知道怎么排序吗?

protected $_embedHTML = array('youtube' => '<object width="425" height="350"
                                            type="application/x-shockwave-flash" '.
                                            'data="http://www.youtube.com/'.$value.'">'.
                                            '<param name="movie" value="http://www.youtube.com/'.$value.'">
                                            </param>'.
                                            '<!--[if IE]>'.
                                            '<embed src="http://www.youtube.com/'.$value.'"'.
                                            'type="application/x-shockwave-flash"'.
                                            'wmode="transparent" width="425" height="350" />'.
                                            '<![endif]-->'.
                                            '</object>');

1 个答案:

答案 0 :(得分:3)

您无法以这种方式在类变量定义中连接数据。初始化值必须是常量。

试试这个:

protected $_embedHTML;

function __construct() {
  $this->_embedHTML = array('youtube' => '<object width="425" height="350"
      type="application/x-shockwave-flash" '.
      data="http://www.youtube.com/'.$value.'">'.
      '<param name="movie" value="http://www.youtube.com/'.$value.'">
      </param>'.
      '<!--[if IE]>'.
      '<embed src="http://www.youtube.com/'.$value.'"'.
      'type="application/x-shockwave-flash"'.
      'wmode="transparent" width="425" height="350" />'.
      '<![endif]-->'.
      '</object>');
}

或者,剥离连接并简单地使其成为多行字符串。我不确定你为什么不这样做,因为它已经由多行字符串组成。