PHP Exec函数

时间:2014-07-18 14:31:54

标签: php csv xls

我正在编写一个PHP脚本,它将运行XLS到CSV的转换。我正在使用exec(),但我无法让程序运行。我查看了关于这个主题的大部分评论都无济于事。

<?php
    $pXCExe="C:Program Files (x86)\XLS to CSV\xls2csv.exe";
    $pXLSFileName="C:\TestExcell\vaca.xls";
    $pOutFileName="C:\TestExcell\vca.csv";
    $olines=0;
    $ecode=0;

    echo $R = exec($pXCExe.' "'. $pXLSFileName. '" "'. $pOutFileName .'"'.'"'/silent''"'.'"/fields=pipe'"', $olines, $ecode);

?>

1 个答案:

答案 0 :(得分:0)

由于程序的路径包含空格,请务必在命令中引用它:

$pXCExe = '"C:\Program Files (x86)\XLS to CSV\xls2csv.exe"';

双引号内的反斜杠被视为转义字符,因此对于$pXLSFileName$pOutFileName,请勿使用双引号:

$pXLSFileName = 'C:\TestExcell\vaca.xls';
$pOutFileName = 'C:\TestExcell\vca.csv';
如果你想保留双引号,请

或转义反斜杠:

$pXLSFileName = "C:\\TestExcell\\vaca.xls";
$pOutFileName = "C:\\TestExcell\\vca.csv";