【问题标题】:Creating a simple PHP interpreter in Visual C++在 Visual C++ 中创建一个简单的 PHP 解释器
【发布时间】:2012-02-20 03:33:00
【问题描述】:

当我查看从 PHP 网站下载的源代码文件时,我很容易迷失方向。我想做的是获取创建一个控制台应用程序所需的所有源代码,该应用程序获取您的 PHP 代码并执行它。我还希望能够添加 C++ 函数并从 PHP 中调用它们。我通过 Xcode 在我的 Mac 上使用 Lua 非常简单地做到了这一点,但我认为在不同的系统上使用不同的程序使用 PHP 不会那么容易。

【问题讨论】:

  • PHP 的解释器有什么问题? ala php.exe
  • 我猜你的用例是什么?您可以获得一个 php.exe,它可以完全满足您的需求。

标签: php c++ visual-c++ interpreter embedding


【解决方案1】:

您可以使用 C(或 C++,我想)编写 PHP 扩展来向 PHP 公开库,但 PHP 并非旨在嵌入到 Web 服务器以外的应用程序中。

【讨论】:

  • 好的,我想我现在的问题是如何在 WampServer 中向 PHP 添加扩展?
  • 使用extension = myextension.dll将它们加载到php.ini
  • 您可以从控制台运行 PHP,甚至可以使用它创建桌面应用程序。即使它没有被广泛使用,但这并不意味着它是不可能的。
【解决方案2】:

关于 @duskwuff 评论的 2019 年小更新。

PHP8 将有 JIT 编译器,所以,不,PHP 将不再仅用于 web。

如图所示,PHP8 编译器比 Java、C 编译器等更快。

【讨论】:

  • 这些数字是什么意思?他们来自哪里?
  • 这些数字是什么意思?不确定您是否是程序员,但编译时间意味着更难和更长的过程将更容易完成,例如大资源计算等。我无法告诉您确切的来源,因为我对新的 PHP8 进行了很多搜索我能说的只是谷歌搜索“PHP8 JIT 比较”,你会发现 PHP8 是一件大事。
  • 编辑:刚刚看到你是 C++ 或 Python 开发者。你不可能同意这一点,但基准测试仍然是一个基准测试,所有将 PHP8 与其他语言编译器进行比较的基准测试都表明 PHP 会杀死所有其他编译器。所以在 2019 年告诉 PHP 已经“死”并且只针对 webdev 完全是偏见。
  • "... 编译时间意味着更难和更长的过程将更容易完成,比如大资源计算..." 所以你的数字是编译时间?它们对于运行程序很重要吗?
  • 我的问题不是关于基准的含义。它是关于哪个任务、源代码、编译器选项、硬件、缓存使用……。如何在不同的编译器之间进行比较?否则,我认为基准测试结果基本上没有用。
猜你喜欢
  • 2010-09-20
  • 2023-03-21
  • 2017-05-10
  • 2011-10-17
  • 1970-01-01
  • 2012-02-09
  • 2014-11-18
  • 1970-01-01
  • 2011-01-20
相关资源
最近更新 更多