语法错误,意外的“@”,期待“)”
syntax error, unexpected '@', expecting ')'
我正在制作一个内容管理系统,当打开以下代码时,我不断收到相同的错误(使用 XAMPP):
解析错误:第 47 行 C:\xampp\htdocs\cms\classes\Article.php 中的语法错误,意外的“@”,应为“)”
我已经试过用')'替换'@',但还是不行。如果我这样做,错误将变为:
解析错误:语法错误,第 47 行 C:\xampp\htdocs\cms\classes\Article.php 中的意外“:”
public function __construct( $data=array() ) {
if ( isset( $data['id'] ) ) $this->id = (int) $data['id'];
if ( isset( $data['publicationDate'] ) ) $this->publicationDate = (int) $data['publicationDate'];
if ( isset( $data['title'] ) ) $this->title = preg_replace ( "/[^.,-_'"@?!:$ a-zA-Z0-9()]/", "", $data['title'] );
if ( isset( $data['summary'] ) ) $this->summary = preg_replace ( "/[^.,-_'"@?!:$ a-zA-Z0-9()]/", "", $data['summary'] );
if ( isset( $data['content'] ) ) $this->content = $data['content'];
}
我希望 运行 没有任何问题。
您应该像这样转义双引号:\",只需在前面添加斜杠。
第7行和第8行的问题。
此代码对我有用。
public function __construct( $data=array() ) {
if ( isset( $data['id'] ) ) $this->id = (int) $data['id'];
if ( isset( $data['publicationDate'] ) ) $this->publicationDate = (int) $data['publicationDate'];
if ( isset( $data['title'] ) ) $this->title = preg_replace ( "/[^.,-_'\"@?!:$ a-zA-Z0-9()]/", "", $data['title'] );
if ( isset( $data['summary'] ) ) $this->summary = preg_replace ( "/[^.,-_'\"@?!:$ a-zA-Z0-9()]/", "", $data['summary'] );
if ( isset( $data['content'] ) ) $this->content = $data['content'];
}
我正在制作一个内容管理系统,当打开以下代码时,我不断收到相同的错误(使用 XAMPP):
解析错误:第 47 行 C:\xampp\htdocs\cms\classes\Article.php 中的语法错误,意外的“@”,应为“)”
我已经试过用')'替换'@',但还是不行。如果我这样做,错误将变为:
解析错误:语法错误,第 47 行 C:\xampp\htdocs\cms\classes\Article.php 中的意外“:”
public function __construct( $data=array() ) {
if ( isset( $data['id'] ) ) $this->id = (int) $data['id'];
if ( isset( $data['publicationDate'] ) ) $this->publicationDate = (int) $data['publicationDate'];
if ( isset( $data['title'] ) ) $this->title = preg_replace ( "/[^.,-_'"@?!:$ a-zA-Z0-9()]/", "", $data['title'] );
if ( isset( $data['summary'] ) ) $this->summary = preg_replace ( "/[^.,-_'"@?!:$ a-zA-Z0-9()]/", "", $data['summary'] );
if ( isset( $data['content'] ) ) $this->content = $data['content'];
}
我希望 运行 没有任何问题。
您应该像这样转义双引号:\",只需在前面添加斜杠。
第7行和第8行的问题。 此代码对我有用。
public function __construct( $data=array() ) {
if ( isset( $data['id'] ) ) $this->id = (int) $data['id'];
if ( isset( $data['publicationDate'] ) ) $this->publicationDate = (int) $data['publicationDate'];
if ( isset( $data['title'] ) ) $this->title = preg_replace ( "/[^.,-_'\"@?!:$ a-zA-Z0-9()]/", "", $data['title'] );
if ( isset( $data['summary'] ) ) $this->summary = preg_replace ( "/[^.,-_'\"@?!:$ a-zA-Z0-9()]/", "", $data['summary'] );
if ( isset( $data['content'] ) ) $this->content = $data['content'];
}