首页 > 编程语言 >Zephir构建PHP扩展

Zephir构建PHP扩展

时间:2024-08-07 09:52:31浏览次数:6  
标签:php zephir utils 扩展 构建 PHP Zephir

工作原理就是把你写好的 php 代码编译成 c,然后你可以将其以扩展.so的形式添加到 'php.ini' 文件中。功能稍微少一点,适合简单场景

安装

git clone https://github.com/phalcon/zephir
cd zephir
./install -c

验证是否安装正确:

zephir help

开始编写代码

zephir init utils

执行之后,一个目录称为“utils”创建在当前工作目录:

$ cd utils
$ ls
ext/ utils/ config.json

utils/utils/greeting.zep

namespace Utils;

class Greeting
{

    public static function say()
    {
        echo "hello world!";
    }

}

现在,我们需要告诉Zephir编译和生成的扩展,必须在根目录:

zephir build

如果一切顺利将看到以下输出:

Extension installed!
Add extension=utils.so to your php.ini
Don't forget to restart your web server

最后添加到php扩展。 php.ini中加入extension=utils.so。

检查是否正常加载扩展通过执行以下:

$ php -m
[PHP Modules]
utils

测试

<?php
echo Utils\Greeting::say(), "\n";

标签:php,zephir,utils,扩展,构建,PHP,Zephir
From: https://www.cnblogs.com/qcy-blog/p/18346430

相关文章

  • PRipple:现代化PHP原生协程引擎
    转载自微信公众号《开源技术小栈》简介PRipple是一个高性能的原生PHP协程框架,旨在处理高并发、复杂的网络通信和数据操作。项目基于PHP8.1自身的纤程特性实现协程,提供了更加简单易用的API和工具,使得开发者可以轻松地构建高性能的PHP应用。文档地址官方文档特点高性能:......
  • es6-string-html vscode插件 js里面template的高亮插件 无构建vue使用
    es6-string-htmlvscode插件js里面template的高亮插件无构建vue使用这个插件可以让js里面的template的字符串高亮,前面加/*html*/Refference:无构建和打包,浏览器直接吃上Vue全家桶?https://juejin.cn/post/7399094428343959552......
  • PayPal支付对接php
    #安装composer包"paypal/rest-api-sdk-php":"^1.14","paypal/paypal-checkout-sdk":"^1.0"usePayPal\Api\Amount;usePayPal\Api\Details;usePayPal\Api\Item;usePayPal\Api\ItemList;usePayPal\Api\Payer......
  • keras 中的 ConvLSTM1D 如何从分离的 Conv1D 和 LSTM 层构建?
    我读了这个文档:https://keras.io/api/layers/recurrent_layers/conv_lstm1d/但是,我们可以使用ConvLSTM1D和Conv1D层构造LSTM的等效层吗?或者,它们是完全分离的层。也许这就是我的想法,我不确定这是否正确:fromkeras.api.layersimportInp......
  • 构建基于检索但具有对话元素的聊天机器人
    我正在寻求用Python创建一个基于足球统计的非常小的聊天机器人。就个人经验而言,我在银行业担任开发人员并拥有IT背景,但是我对Python相对较新,所以还在学习语法。我了解OOP语言的概念,所以它对我来说并不陌生。我正在寻找与我的聊天机器人类似的对话流程:“莱昂......
  • LangChain与JWT:构建安全认证的桥梁
    LangChain与JWT:构建安全认证的桥梁在现代Web应用和微服务架构中,安全认证是保护数据和资源访问的关键。JSONWebTokens(JWT)作为一种广泛使用的开放标准,为安全传输提供了一种简洁而自包含的方式。LangChain,作为一个假设的编程辅助工具,如果存在,它可能会支持JWT,以增强其在安全......
  • 小白学php,emlog6.0代码审计,fortify代码审计
    一、初识报错注入报错注入是一种通过引发SQL错误并利用错误消息回显数据库信息的技术。通过使用MySQL中的特定函数(如UPDATEXML),可以将数据库查询结果嵌入到错误消息中,从而获取数据库中的数据。二、执行原理代码逻辑分析:用户输入参数(如用户ID)。后台执行SQL查询(查询用户信息......
  • 【大模型书籍PDF】LangChain入门指南:构建高可复用、可扩展的LLM应用程序( 推荐)
    今天又来给大家推荐一本大模型方面的书籍<Langchain入门指南>这本书专门为那些对自然语言处理技术感兴趣的读者提供了系统的LLM应用开发指南。全书分为11章,从LLM基础知识开始,通过LangChain这个开源框架为读者解读整个LLM应用开发流程。......
  • 【建造者模式】全面解析与最佳实践:打造复杂对象的蓝图(构建复杂对象的艺术)
    文章目录Java中的建造者模式:全面解析与最佳实践1.引言2.建造者模式概念定义与用途适用场景解决的问题3.建造者模式原理主要角色解释工作流程UML图和时序图4.建造者模式在Java中的实现逐步构建示例程序1.创建抽象建造者类2.实现具体建造者类3.设计产品类4.编写D......
  • ThinkPHP8事件两种使用方式
    目录通过监听方式通过事件订阅智能订阅手动订阅监听方式生成事件监听类,在项目根目录下执行以下命令://生成一个UserLoginSuccess监听类phpthinkmake:listenerUserLoginSuccess执行之后,会在app->listener目录下生成UserLoginSuccess.php,代码如下:/**用户登录成......