代码之家  ›  专栏  ›  技术社区  ›  zod

PHP exec()。我可以用它将数据导出到具有搜索条件的csv吗

php
  •  0
  • zod  · 技术社区  · 15 年前

    PHP exec()。我可以使用此功能将数据导出到具有搜索条件的csv。

    由于结果是巨大的,我可以使用exec和运行系统命令作为参数,并返回一个结果为csv或zip。

    3 回复  |  直到 15 年前
        1
  •  0
  •   damusnet    15 年前

    当然可以。下面是我们用于执行每日MyQSL备份的示例代码:

    while ($obj = mysql_fetch_object($res)) {
            $file = $path.$obj->base.".sql";
            $cmd = "rm -f ".$file;
            exec($cmd);
            $cmd = "nice -19 mysqldump -h".$host." -u".$login." -p".$pass." ".$obj->base." > ".$file;
            exec($cmd);
            $sql = "update save_mysql set last_daily=NOW() where base = '".$obj->base."'";
            mysql_query($sql);
    }
    
        2
  •  0
  •   RobertPitt    15 年前

    您可以执行以下操作:

    exec('myzip some/file.csv > output.zip &');
    
        3
  •  0
  •   ChrisR    15 年前

    将变量传递到 exec ,此变量是一个用字符串填充的数组。shell命令生成的每行输出都有一个字符串。

    所以如果你这么做了

    // test.php
    $data = array();
    exec('ls', $data);
    var_dump($data);
    

    你会得到这样的输出

    array(4) {
      [0]=>
      string(9) "foto1.psd"
      [1]=>
      string(9) "foto2.psd"
      [2]=>
      string(12) "tekening.psd"
      [3]=>
      string(8) "test.php"
    }
    

    之后,您可以像通常使用php一样填充csv文件。。或者在输出csv之前对数据进行一些后置/预处理。看一看 fputcsv

    推荐文章