千家信息网

怎么用composer开发自己的php扩展包

发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,小编给大家分享一下怎么用composer开发自己的php扩展包,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!compose
千家信息网最后更新 2025年02月03日怎么用composer开发自己的php扩展包

小编给大家分享一下怎么用composer开发自己的php扩展包,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

composer 是PHP用来管理依赖关系的工具

开发流程

初始化自己的扩展包 composer init

$ composer init  Welcome to the Composer config generator  This command will guide you through creating your composer.json config.Package name (/) [administrator/self_composer]: victor/composer-self //包名称-不能大写,否则无效 Description []: composer-self package //描述Author [victor24680 <490319148@qq.com>, n to skip]://作者Minimum Stability []: dev //最小稳定版本Package Type (e.g. library, project, metapackage, composer-plugin) []: library //类型License []: MITDefine your dependencies.Would you like to define your dependencies (require) interactively [yes]? n //是否定义依赖关系Would you like to define your dev dependencies (require-dev) interactively [yes]? n{    "name": "victor/composer-self",    "description": "This is a composer-send package",    "type": "victor",    "license": "MIT",    "authors": [        {            "name": "victor24680",            "email": "490319148@qq.com"        }    ],    "minimum-stability": "dev",    "require": {}}Do you confirm generation [yes]? yes

修改自己包的依赖关系,修改内容如下

{    "name": "victor/sendtool-package",    "description": "sendtool package",    "type": "victor",    "license": "MIT",    "authors": [        {            "name": "victor24680",            "email": "490319148@qq.com"        }    ],    "minimum-stability": "dev",    "require": {        "php": ">=5.6" //php版本要求    },    "autoload": {        "psr-4": { //加载规范            "App\\": "src/App",            "Contract\\": "src/Contract"        }    }}

编写好源码 见:https://github.com/victor24680/self-composer/tree/master/src

安装测试 composer install

$ composer installLoading composer repositories with package informationUpdating dependencies (including require-dev)Content-Length mismatch, received 37487 bytes out of the expected 2005372http://packagist.org could not be fully loaded, package information was loaded from the local cache and may be out of dateNothing to install or updateWriting lock fileGenerating autoload files

GitHub上创建composer-self仓库

git initgit add .git commit -m "初始自己的组件库"git remote add origin https://github.com/victor24680/self-composer.gitgit push origin master

Packagist 上提交自己的github创建的composer-self仓库地址

注册地址:https://packagist.org/,提交成功之后,就可以开始下面的测试

测试 ,A目录代表项目根目录

创建一个A目录,然后在项目根目录下执行:composer require victor24680/self-composer dev-master

$ composer require victor24680/self-composer dev-master./composer.json has been updatedLoading composer repositories with package informationUpdating dependencies (including require-dev)Package operations: 1 install, 0 updates, 0 removals  - Installing victor24680/self-composer (dev-master 0935c75): Cloning 0935c75eda from cacheWriting lock fileGenerating autoload filesmsg('小明','隔壁老王在偷吃!!!');//输出:【站内消息】发送给:小明|发送内容:【普通消息】隔壁老王在偷吃!!!

以上是"怎么用composer开发自己的php扩展包"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

0