我有一个java文件,它会生成itunes报告。我想在我的php脚本中执行它。我在php中使用exec()函数:它在linux中正常工作。但不在windows.Am我错过了什么?任何帮助将不胜感激。
exec("java Autoingestion ".'USERNAME'." '".'PASSWORD'."' ".'VENDORID'." ".'REPORT_TYPE'." ".'DATE_TYPE'." ".'REPORT_SUB_TYPE'." ".'2012-05-28'."",$output,$return);
答案 0 :(得分:1)
检查字符串连接的结果。看起来有点不确定:
"java Autoingestion USERNAME 'PASSWORD' VENDORID REPORT_TYPE DATE_TYPE REPORT_SUB_TYPE 2012-05-28"
您没有使用任何变量或其他任何变量,因此没有理由连接这些变量。
即使大写部分是占位符,也不必连接。只需使用变量插值:
$username = 'USERNAME';
$password = 'PASSWORD';
$exec = "java Autoingestion '{$username}', '{$password}', ...";
exec($exec);
答案 1 :(得分:0)
我建议您检查脚本输出(在stdout和stderr上)。
还检查运行脚本所需的环境变量。