我有一个PHP脚本,它传递了远程服务器的MySQL连接细节,我希望它执行一个mysqldump
命令.为此,我使用的是php exec()
函数:
<?php
exec("/usr/bin/mysqldump -u mysql-user -h 123.145.167.189 -pmysql-pass database_name > /path-to-export/file.sql", $output);
?>
Run Code Online (Sandbox Code Playgroud)
当正确的登录详细信息传递给它时,它将完全正常工作.然而,我无法检查,如果它按预期执行,如果不找出为什么不.所述$output
阵列返回为空,而如果我直接在命令行上运行命令打印出告诉我登录失败的消息.我想捕获这些错误消息并显示它们.有关如何做到这一点的任何想法?
可能重复:
使用数字键作为对象转换数组
我想知道(object)
型铸造.
可以做很多有用的事情,比如将一个关联数组转换为一个对象,一些不那么有用和一些有趣(恕我直言)的东西,比如将标量值转换为对象.
但是如何访问索引数组的转换结果呢?
// Converting to object an indexed array
$obj = (object) array( 'apple', 'fruit' );
Run Code Online (Sandbox Code Playgroud)
访问特定值怎么样?
print $obj[0]; // Fatal error & doesn't have and any sense
print $obj->scalar[0]; // Any sense
print $obj->0; // Syntax error
print $obj->${'0'}; // Fatal error: empty property.
print_r( get_object_vars( $obj ) ); // Returns Array()
print_r( $obj ); /* Returns
stdClass Object
(
[0] => apple
[1] => fruit
)
*/
Run Code Online (Sandbox Code Playgroud)
以下工作因为stdClass …
我正在从CLI界面运行PHP脚本.
如何获取正在运行的用户名,就像我在Apache($_ENV['APACHE_RUN_USER']
)时一样?现在我正在使用exec('whoami')
,但不是平台独立的.
谢谢.
我需要序列化一个关联的JavaScript数组.它是一种简单的产品形式和数值,但在构建数组之后似乎是空的.