2013-08-06 71 views
0

我有一个需求,我需要从codeigniter控制器运行ac程序,php shell命令不在控制器中,但是,当使用相同的命令简单的PHP(没有codeigniter)工作正常。shell_exec,popen,exec,passthru不能在codeigniter控制器中工作

  • 我检查了php.ini设置shell_exec,exec,popen被启用。

请帮助...

使用命令IAM是

$output = shell_exec("./hello"); //hello.c prints hello world. 
echo $output; 

使用PWD是我的主文件夹路径所在的C文件存在印刷的路径。 相同的命令(shell_exec(“./hello”);)不会在codeigniter中工作。

回答

0

请检查您是否给出了codeigniter中的exec命令的正确路径。 使用下方检查当前目录。

exec('pwd'); 

此外,如果它在不正确的目录中,则执行 提供完整的路径。

检查c代码文件是否在这个目录中。如果不是,则相应地改变它。

请在你的问题中提供exec命令。

您应该在exec命令中提供绝对路径。

$output = shell_exec("/absolute/path/to/executable/hello"); //hello.c prints hello world. 
echo $output; 
+0

嘿nishant,为c文件提供的路径在这两种情况下是相同的,我已编辑我的问题,你可以建议现在的东西。 – user2462648

+0

嘿,提供c文件的完整路径来通过CI执行它。 – Nishant