【问题标题】:Run C++ script in PHP在 PHP 中运行 C++ 脚本
【发布时间】:2012-08-04 03:51:58
【问题描述】:

我有一个 C++ 程序需要从 PHP 脚本中获取数据,对其进行处理,然后将数据返回给我的 PHP 脚本。

  1. 如何将值从 PHP 传递到 C++?
  2. 如何运行 C++ 脚本?你必须先编译它吗?
  3. 如何从 C++ 脚本中获取值?

【问题讨论】:

  • 你肯定没有 C++ 脚本
  • 通过php cli(命令行界面)
  • @Dagon,赞成票。 PHP CLI 在这里一无所获,因为 PHP 脚本运行的上下文无关紧要。
  • 你为什么这么认为?为什么这不能成为常规 PHP 页面脚本的一部分?他可以调用PHP的exec(),或者类似的函数。
  • 抱歉,我还是编程新手,所以我不确定 Jonathon Reinhart 的正确术语是什么。

标签: php c++ json


【解决方案1】:

1 .如何将值从 PHP 传递到 C++?

Ans: 在 php 文件中,您可以使用 exec 函数来执行您的 C++ 二进制文件。 示例:

exec("/path/to/your/binary $var1 $var2", $output);

2 . 如何运行 C++ 脚本?你必须先编译它吗?

Ans:当然,你不能直接执行C++脚本,C++是编译语言,你可以直接执行二进制文件。

3 .如何从 C++ 脚本中获取值?

Ans:见1,你会得到$output的输出形式C++。

【讨论】:

  • 由于这个问题很可能会被那些刚从 PHP 内部调用命令行的人看到,我认为关于命令注入的警告是有必要的。当将此方法用作网站的一部分时,您必须小心,如果您从用户那里获得输入,那么有人不会将命令插入您的变量(即示例中的 $var1 $var2)。
【解决方案2】:

1-可以使用exec调用外部应用程序,使用命令行参数

2- C++ 不是脚本,它是一种编译语言,你必须先编译它

3- 正常的标准输出将被 php exec 函数捕获

【讨论】:

  • 如果你想在 c++ 中使用 webserver,你必须检查 cgi,然后 php 将使用普通的 web 调用来调用 c++ 应用程序并使用类似 curl
猜你喜欢
  • 2014-12-07
  • 2010-09-12
  • 2011-02-02
  • 2023-04-03
  • 1970-01-01
  • 1970-01-01
  • 2013-04-26
  • 2018-11-21
  • 1970-01-01
相关资源
最近更新 更多