【发布时间】:2014-02-10 20:42:57
【问题描述】:
我有一个简单的 hello world 命令行应用程序,我试图通过 php 执行它,但我不知道如何切换到应用程序的调试文件夹,然后运行可执行文件。到目前为止,我已经尝试使用popen 移动终端所在的位置,但是我这样做的方式似乎不正确,然后使用exec 执行命令。
这是我的 PHP 文件:
<?php
$loc = '/Users/dave/Library/Developer/Xcode/DerivedData/HelloWorld-akuofooecqboeybtsfalcrelvfjt/Build/Products/Debug';
$argv = "./HelloWorld j";
popen($loc, 'r');
echo exec($argv);
这是我的 C++ 命令行程序:
#include <iostream>
using namespace std;
int main(int argc, char** argv)
{
if( argc < 2 )
{ printf("Please enter a value \n");
return -1;
}
std::cout << argv[1]<<"\n";
std::cout << "Hello, World!\n";
return 0;
}
调试文件夹所在的目录是/Users/dave/Library/Developer/Xcode/DerivedData/HelloWorld-akuofooecqboeybtsfalcrelvfjt/Build/Products/Debug,为了执行它,我使用了./HelloWorld x(请注意,如果HelloWorld 应用程序有空间,这将如何工作?)
当我从终端运行它时一切正常,所以 c++ 文件没有问题。
那么谁能告诉我如何从 php 执行这个应用程序?
【问题讨论】:
标签: php c++ xcode executable