PHPy 是一个 PHP 扩展,你可以在 PHP 代码里使用 Python 代码。有些场景下在 PHP 应用程序中集成 Python 功能的情况非常有用。本文将向你展示如何在 Ubuntu 22.04...
PHPy 是一个 PHP 扩展,你可以在 PHP 代码里使用 Python 代码。有些场景下在 PHP 应用程序中集成 Python 功能的情况非常有用。本文将向你展示如何在 Ubuntu 22.04 LTS 上安装 PHPy 并开始使用它。
确保你的系统是 Ubuntu 22.04.3 LTS 版本。可以通过运行以下命令来检查:
cat /etc/os-release如果输出显示 PRETTY_NAME="Ubuntu 22.04.3 LTS",那么就可以继续进行下一步了。
首先需要安装一些必要的软件包,包括 PHP 开发工具、PECL 和 Python 相关的开发文件。在终端中执行以下命令:
sudo apt update
sudo apt install php-dev php-pear libpython3-dev python3.10-dev这些命令将更新你的软件包列表,并安装 PHP 开发工具、PHP 的 PEAR 包管理器以及 Python 3.10 的开发文件。
接下来,我们将安装 PHPy 扩展。在安装之前,我们需要指定 Python 3.10 的配置路径。你可以通过以下命令找到 Python 3.10 的配置路径:
which python3.10-config现在我们已经准备好安装 PHPy。运行以下命令:
sudo pecl install -f phpy在安装过程中,你会被询问 Python 配置文件的路径。请按照提示输入正确的路径:
Specify the path of python-config [/usr/bin/python3-config] : /usr/bin/python3.10-config安装完成后,记得将扩展添加到 PHP 的配置文件中。对于 Ubuntu,你可能需要编辑 /etc/php/8.1/cli/php.ini 文件(假设你的 PHP 版本是 8.1)。在该文件中添加以下行:
extension=phpy.so重启 PHP-FPM 或 Apache 服务器以应用更改。
现在已经成功安装了 PHPy。可以看一个简单的示例,演示在 PHP 中调用 Python 代码。
创建一个名为 example.php 的文件,并在其中输入以下代码:
<?php
echo "Hello from PHP!\n";
// 导入 Python 模块
$py = Py::import('sys');
print_r($py->version);
// 调用 Python 函数
$py_func = Py::evalString('lambda x: x * 2');
echo $py_func(5);
?>这个脚本会从 PHP 输出一条消息,然后导入 Python 的 sys 模块并打印其版本信息。最后定义一个 Python 函数,该函数接收一个参数并将其乘以 2。
保存文件并在 Web 服务器上运行它,或者直接在命令行中运行:
php example.php你应该能看到输出的信息和计算结果。