首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >php exec mysql空输出

问php exec mysql空输出
EN

Stack Overflow用户
提问于 2011-11-04 09:55:51
回答 2查看 2.5K关注 0票数 3

我试图捕获错误输出。

代码语言:javascript
复制
   <?php
        $output = array();
        $command = <<<END
mysql -h$host -u$user --password='$pass' --execute="create database $name;" 2>&1
END;
        exec($command, $output, $code);
    ?>
  1. $output不返回值
  2. $code返回0

但是这个查询返回终端中的一个错误:“数据库已经存在”。

当我移除2>&1

代码语言:javascript
复制
     $command = <<<END
        mysql -h$host -u$user --password='$pass' --execute="create database $name;"
END;
     exec($command, $output, $code);
  1. $output不返回值
  2. $code返回1

如何获得正确的$output和$code值?

EN

回答 2

Stack Overflow用户

发布于 2012-01-20 11:35:09

也有同样的问题,只是我导入了一个.sql文件,而不是使用--execute。

在我添加2>&1和使用双引号而不是单引号之后,它起了作用。

代码语言:javascript
复制
exec("mysql -h $host -u $user -p$pass my_db < \"faulty_sql.sql\" 2>&1",$output);
票数 2
EN

Stack Overflow用户

发布于 2011-11-04 09:58:40

使用系统()

为什么不使用msyql_query('your query');呢?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8007455

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档