【问题标题】:PHP DOMDocument instantiation syntax errorPHP DOMDocument 实例化语法错误
【发布时间】:2011-12-28 07:01:21
【问题描述】:

我一直在代码的 sn-p 下方拉我的头发 - 这在语法上是正确的。但是当我将它放在服务器上时,我不断收到以下错误:

Parse error: syntax error, unexpected T_VARIABLE in /home/scripts/temp.php5 on line 3

第 3 行:

Line 3 = $dom = new DOMDocument();

有什么想法我可能做错了吗?

<?php
  // new dom object
    $dom = new DOMDocument();

  //load the html
  $html = $dom->loadHTMLFile('<HTML><A HREF="ss">asd</A>');

  //discard white space 
  $dom->preserveWhiteSpace = false; 

  //the table by its tag name
  $tables = $dom->getElementsByTagName('table'); 

  //get all rows from the table
  $rows = $tables->item(0)->getElementsByTagName('tr'); 

  // loop over the table rows
  foreach ($rows as $row) 
  { 
   // get each column by tag name
      $cols = $row->getElementsByTagName('td'); 
   // echo the values  
      echo $cols->item(0)->nodeValue.''; 
      echo $cols->item(1)->nodeValue.''; 
      echo $cols->item(2)->nodeValue;
    } 

?>

【问题讨论】:

  • 您的错误可能出现在您的 DOMDocument 实例化之前。很可能,在这一行之前缺少分号或未闭合的引号或类似的东西。
  • 很多时候,您应该查看 PHP 报告错误的行之前的行。
  • 前面没有一行——这是php文件中唯一的sn-p..
  • 它是从另一个文件中包含的还是真的是脚本的开始?
  • 另外,请确认该行上没有无效的、不可打印的字符。我注意到它缩进了一个额外的空间。检查空格以确保它全部是空格或制表符,并且没有其他奇数字符。

标签: php dom html-parsing


【解决方案1】:

我尝试了该代码并收到以下错误 PHP 致命错误:在第 15 行的 /home/prog/www/imdb/test.php 中的非对象上调用成员函数 getElementsByTagName()

我将代码修改为

我猜你粘贴的行之前有一个错误。什么版本的php和什么操作系统。

是您粘贴 temp.php5 的文件,什么文件调用该文件是它包含还是只是程序 php

【讨论】:

    猜你喜欢
    • 2012-05-18
    • 1970-01-01
    • 2012-04-03
    • 2023-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-11
    相关资源
    最近更新 更多