Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/249.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在PHP中解析HTML数据并在Excel中导出_Php_Javascript_Html_Excel - Fatal编程技术网

如何在PHP中解析HTML数据并在Excel中导出

如何在PHP中解析HTML数据并在Excel中导出,php,javascript,html,excel,Php,Javascript,Html,Excel,我想从HTML页面读取HTML表格数据,而不使用数据库,并导出到Excel文件。我正在使用这个Javascript cede,但它不起作用。请推荐我,我是新来的 function write_to_excel() { str=""; var mytable = document.getElementsByTagName("table")[0]; var rowCount = mytable.rows.length; var colCount = mytable.getElements

我想从HTML页面读取HTML表格数据,而不使用数据库,并导出到Excel文件。我正在使用这个Javascript cede,但它不起作用。请推荐我,我是新来的

   function write_to_excel() {
  str="";

var mytable = document.getElementsByTagName("table")[0];
var rowCount = mytable.rows.length;
var colCount = mytable.getElementsByTagName("tr")[0].getElementsByTagName("td").length; 

var ExcelApp = new ActiveXObject("Excel.Application");
var ExcelSheet = new ActiveXObject("Excel.Sheet");
ExcelSheet.Application.Visible = true;

for(var i=0; i<rowCount; i++) 
{   
    for(var j=0; j<colCount; j++) 
    {           
        str= mytable.getElementsByTagName("tr")[i].getElementsByTagName("td")[j].innerHTML;
        ExcelSheet.ActiveSheet.Cells(i+1,j+1).Value = str;
    }
}
}

Pasre\u html.php

 <?php 
  include 'simple_html_dom.php';//You have to DOWNLOAD THIS FILE


  //IF YOU WANT HTML FILE FROM DATABASE THIS WILL HELP YOU
   //$ftch_file=mysql_query("SELECT * FROM tb_htmlfile WHERE status=1");
   //while($ftch_file_row=mysql_fetch_array($ftch_file))
  //{

//$inputfile='html_file/'. $ftch_file_row['file_name'];
 $inputfile='file.html';
  $html = file_get_html($inputfile);

  //}




    $cells = $html->find('td');//IF YOU WANT TO PARSE DIV $cells = $html->find('DIV');
    $i=0;
     foreach($cells as $cell) 
    {

   // $xyz = $cell->plaintext . "#";
   $var[$i]=$cell->plaintext;

 $i++;


/*$he=ereg_replace("([0-9]+)", "2000", $xyz);*/
 //print_r(explode("#",$xyz));



 }

    echo $var[$i]; //OR echo $var[1]; $var[2]; 
  ?>

我没有得到正确的答案。这并不意味着你会问同样的问题,然后把它贴在不属于你的地方。我有一种强烈的感觉,你只是在某个地方抓到了这段代码,却不知道它实际上在做什么——这意味着你永远也解决不了这个问题。我听说你应该用regexps解析HTML……尝试创建一个简单的数据结构,例如,你发出警报的CSV/控制台。注销并检查输出。这将帮助您解决问题。1没有PHP存在或提及。2大部分内容只是Internet Explorer中ActiveX的自动化代码,与数据库没有任何关系。3您需要参考原始文档,例如来自Microsoft的文档:您需要一些能够工作的文档,即使是在hello world环境中,您也可以从那里获得帮助。