通过php在xampp错误上执行shell

时间:2017-08-07 16:24:48

标签: php mysql shell

我想使用代码在localhost上备份一个表。

$dbhost = '127.0.0.1';
$dbuser = 'root';
$dbpass = '';
$dbname = 'snapmall';
$dbtable = 'tb_translation';
$dbpath = 'D:test/new/';

//mysqldump -u root -p snapmall ps_translation > D:/test/new/ps_translation.sql
$command = "mysqldump -u $dbuser -p $dbpass $dbname $dbtable > ".$dbpath.$dbtable.".sql";

shell_exec($command);

我在xampp的shell上有测试命令,它工作正常,但是当我通过命令shell_exec()运行它时,文件为空。

1 个答案:

答案 0 :(得分:0)

试试这个,添加2>& 1来获取命令的输出:

$output = shell_exec($command." 2>&1");

然后在这里发布。

你需要能够通过之前调用xamp来执行命令,因为你的exec正在访问bash而不是xampp,所以,换句话说,你的exec必须可以访问一组基本命令,配置你的PATH变量。