我有一個需要讀取excel文件的應用程序。我已經使用http://code.google.com/p/php-excel-reader/downloads/list的插件excel-file-reader完成了這項工作。 現在我需要我的應用程序來讀取後臺進程中的excel文件,並且我選擇從Windows命令提示符運行php文件。但是當我這樣做時,命令提示符中的結果是文件名person2.xls不可讀,但是當我從瀏覽器運行php文件時,它可以讀取excel文件。這裏是我的代碼來幫助你理解我的意思。PHP excel閱讀器無法從命令提示符中讀取excel文件
<?php
require_once 'php-excel-reader\excel_reader2.php';
$db=pg_connect('host=localhost dbname=hris user=postgres password=Abcd1234');
$table='lin_people';
$dataExcel = new Spreadsheet_Excel_Reader('person2.xls');
$baris = $dataExcel->rowcount($sheet_index=0);
$model=$table;
$fieldsArray=pg_query('SELECT column_name FROM information_schema.columns WHERE table_name="'.$model.'"');
//$fieldsArray=Set::extract('/0/'.$model,$fieldsArray);
$fieldNames=array_keys($fieldsArray[0][$model]);
$tanda=false;
for($batas=0;$batas<count($fieldNames);$batas++)
{
if($fieldNames[$batas]!='id')
{
if($tanda==false)
{
$fields[$batas]=$fieldNames[$batas];
}
else
{
if($batas!=count($fieldNames)-1)
{
$fields[$batas]=$fieldNames[$batas+1];
}
}
}
else
if($fieldNames[$batas]=='id')
{
$fields[$batas]=$fieldNames[$batas+1];
$tanda=true;
}
}
$sukses = 0;
$gagal = 0;
for($i=2;$i<=$baris;$i++)
{
if(!empty($dataExcel))
{
$this->$model->create();
for($y=0;$y<count($fields);$y++)
{
if($y==0)
{
pg_query('INSERT INTO '.$model.' ('.$fields[$y].') VALUES("'.$dataExcel->val($i,$y+1).'")');
}
else
{
$currID=pg_query('SELECT id FROM '.$model.' ORDER BY id desc LIMIT 1');
pg_query('INSERT INTO '.$model.' ('.$fields[$y].') VALUES("'.$dataExcel->val($i,$y+1).'") WHERE id='.$currID);
}
//$this->$model->set($fields[$y],$dataExcel->val($i,$y+1));
}
}
//$this->$model->save();
if('dataExcel')
{
$sukses++;
}
else
{
$gagal++;
}
}
?>
我怎麼能做出這樣的PHP文件中讀取Excel文件,當我從運行命令提示符下的PHP文件嗎?請幫我...
,結果是警告命令:chmod():C中沒有這樣的文件或目錄:\ XAMPP \ htdocs中\雄\ testExcel.p hp在第4行。但person2的文件已經存在於php文件的同一目錄中,但結果表明該文件找不到。這有什麼問題? – user1290932 2012-04-17 08:15:24