【发布时间】:2017-06-25 08:01:53
【问题描述】:
在 Xampp 321 Win7 Mysql5.6 PHP 5.6.3 上运行 Laravel 5.2 我无法创建 BD 转储文件 .sql
$filename = "backup-".Carbon\Carbon::now()->format('Y-m-d_H-i-s').".sql 2>&1";
try{
$command = "mysqldump --user=" . env('DB_USERNAME') ." --password=" . env('DB_PASSWORD') . " --host=" . env('DB_HOST') . " " . env('DB_DATABASE') . " > " . storage_path() . "/" . $filename;
$returnVar = NULL;
$output = NULL;
//exec command allows you to run terminal commands from php
exec($command, $output, $returnVar);
//dd($command);
return 1;
}catch(Exception $e){
return $e->errorInfo; //some error
}
加载脚本时会生成一个空文件!但是通过执行 dd ($ command) 并复制粘贴此文本,此命令在 Xampp shell 中运行良好。请问有什么想法吗?
【问题讨论】:
-
你在使用 artisan 命令吗?
-
不,直接cmd(来自xampp面板的shell)
-
你打算如何从 Laravel 运行它?如果您希望它从 Laravel 运行,请按照此处的说明进行操作:laravel.com/docs/5.2/artisan
-
我想用纯php从Laravel控制器执行任务,直接调用mysql引擎的命令,我想知道是否可能以及为什么写一个.sql文件为空0KB
-
是的,您可以从控制器调用工匠命令。 laravel.com/docs/5.2/artisan#calling-commands-via-code