学习路之PHP--easyswoole3.3安装入门

学习路之PHP--easyswoole安装入门

  • 一、安装swoole扩展
  • 二、安装easyswoole
  • 三、指定PHP版本安装
  • 四、启动swoole
  • 五、EasySwoole的入门学习
    • 如果报:not controller class match
  • 六、学习推荐:

0、centos 7、php7.2.33、easyswoole 3.3

一、安装swoole扩展

在这里插入图片描述

二、安装easyswoole

一、安装前环境检查
‌PHP版本要求‌:EasySwoole 3.x需PHP≥7.1且Swoole扩展≥4.4.15,推荐使用PHP7.3+以获得最佳兼容性
可通过命令验证:

/www/server/php/73/bin/php -v  # 查看PHP7.3版本
php --ri swoole                 # 检查Swoole扩展版本

禁用函数
在这里插入图片描述

pcntl_signal putenv

三、指定PHP版本安装

通过绝对路径调用目标PHP执行Composer命令(以PHP7.3为例):

composer require easyswoole/easyswoole=3.3.x
# 安装框架核心
/www/server/php/72/bin/php /www/server/php/72/bin/composer require easyswoole/easyswoole=3.3.x# 初始化项目
/www/server/php/72/bin/php vendor/easyswoole/easyswoole/bin/easyswoole install

此方法可规避因系统默认PHP版本不符导致的安装失败
在这里插入图片描述

四、启动swoole

php easyswoole start
在这里插入图片描述

五、EasySwoole的入门学习

官网地址:https://www.easyswoole.com/

一、安装easyswoole:
(1)建立安装目录:

cd /data
mkdir easyswoole
cd easyswoole

(2)使用composer下载easyswoole:

composer require easyswoole/easyswoole=3.x

(3)安装:

php vender/easyswoole/easyswoole/bin/easyswoole install

(4)启动:

php easyswoole start

install 安装easySwoole
start 启动easySwoole
stop 停止easySwoole(守护模式下使用)
reload 热重启easySwoole(守护模式下使用)
restart 重启easySwoole(守护模式下使用)

(5)查看启动情况:
方法一 : netstat -tunlp | grep 9501
方法二 : lsof -i :9500

netstat -tunlp | grep 9501

可以看到结果:

tcp        0      0 0.0.0.0:9501            0.0.0.0:*               LISTEN      4015/EasySwoole

kill 4015 //普通关闭进程
kill -9 4015 //强制关闭进程

通过浏览器访问:

http://127.0.0.1:9501可以访问到。
在这里插入图片描述框架安装完毕。

如果报:not controller class match

尝试一下以下2个命令

php easyswoole stop
/www/server/php/72/bin/php easyswoole start

二、编写业务代码:
(1)框架根目录下的dev.php是开发环境下的项目配置文件,可以配置redis、mysql等信息。

(2)手动建立应用目录,如下:

|─App 应用目录
|    └─HttpController 应用的控制器目录
|       └─Index.php 默认控制器文件
| └─Model 模型文件目录
<?php
namespace App\HttpController;use EasySwoole\Http\AbstractInterface\Controller;class Index extends Controller
{function index(){// TODO: Implement index() method.$this->response()->write('hello world');}
}

(3)编辑根目录下的 composer.json 文件,注册应用的命名空间:

{"autoload": {"psr-4": {"App\\": "App/"}},"require": {"easyswoole/easyswoole": "3.x-dev"}
}

最后执行 composer dumpautoload 命令更新命名空间,框架已经可以自动加载 App 目录下的文件了,此时框架已经安装完毕,可以开始编写业务逻辑。

注意,每次提交代码都要重新启动easyswoole框架。

三、组件:
可以从github上安装一些需要的组件:https://github.com/easy-swoole。

六、学习推荐:

https://blog.csdn.net/weixin_43814458/article/details/106301859
https://segmentfault.com/a/1190000038386857
https://blog.csdn.net/qq_35211819/article/details/103138831

基于EasySwoole V3 实现的聊天室

聊天室Demo地址

EasySwoole-Admin

基于EasySwoole框架的后台,内使用Policy组件、FastCache组件、mysqli连接池组件等。用于:api开发过程学习、组件使用学习、项目后台。

admin后台模板地址

EasySwoole-Http-Monitor

开发工具,可以记录最近的http请求,并且分析参数、复发请求,如微信异步回调调试,支付一单,可以反复模拟推送回调,直到程序走通。

http监控工具地址

curdAutomaticGeneration

快速根据数据库生成CURD代码,包括全套bean,model,controller。代码分层,快速开发增删改查功能模块。

自动写代码工具地址

jin-Chat

是基于EasySwoole V3 并整合ES文档中的mysq/redisl协程连接池、Task异步任务、ceche缓存、chat聊天等功能的完整IM应用(demo)

im Demo地址

socialite (第三方登录集成组件)

基于 overtrue/socialite改造的,适用于easyswoole的第三方登录组件,现已支持wechat,qq,weibo,github,facebook

第三方登录集成组件地址

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/news/907499.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ad Hoc

什么是 Ad Hoc&#xff1f; Ad hoc 一词源于拉丁语&#xff0c;意为“为此目的”或“为此特定原因”。一般来讲&#xff0c;它指的是为解决某一特定问题或任务&#xff08;而非为了广泛重复应用&#xff09;而设计的行动、解决方案或组合。在加密货币和区块链领域&#xff0c;…

Lines of Thought in Large Language Models

Lines of Thought in Large Language Models 《Lines of Thought in Large Language Models》(大语言模型中的思维链)聚焦于分析大语言模型(LLMs)在生成文本时,其内部向量轨迹的统计特性。 核心目标是揭示LLMs复杂的“思维过程”(即文本生成时的隐藏状态变化)能否被简…

npm/yarn/pnpm安装时Sharp模块报错解决方法

在安装依赖模块时&#xff0c;npm/yarn/pnpm安装时Sharp模块报错解决方法。 打开源代码发现&#xff1a;使用的下载地址是github地址&#xff0c;就是因为国内经常无法访问github造成的。 解决办法&#xff1a; 把涉及到的下载包设置不要从github上下载&#xff0c;设置成淘宝…

基于CEEMDAN-Transformer-BiLSTM的多特征风速气候预测的完整实现方案及PyTorch源码解析

基于CEEMDAN-Transformer-BiLSTM的多特征风速气候预测的完整实现方案及PyTorch源码解析 一、模型架构设计 1.1 整体框架 该模型采用三级架构设计&#xff08;图1&#xff09;&#xff1a; CEEMDAN分解层&#xff1a;对非平稳风速序列进行自适应分解多模态特征融合模块&#…

ubuntu24.04启用fcitx 5

在ubuntu24.04中启用fcitx 5 ubuntu24.04系统自带三种键盘输入法系统&#xff1a; IBusFcitx 5XIM 系统默认使用的是IBus,这个拼音输入少了一些智能的味道&#xff0c;比较影响输入体验。换用Fcitx 5后&#xff0c;加上搜狗细胞词库&#xff0c;感觉很丝滑&#xff0c;特记录…

【HTML/CSS面经】

HTML/CSS面经 HTML1. script标签中的async和defer的区别2. H5新特性&#xff08;1 标签语义化&#xff08;2 表单功能增强&#xff08;3 音频和视频标签&#xff08;4 canvas和svg绘画&#xff08;5 地理位置获取&#xff08;6 元素拖动API&#xff08;7 Web Worker&#xff08…

Dolphin文档解析从理论到实践——保姆级教程

论文&#xff1a;https://arxiv.org/abs/2505.14059 代码&#xff1a;github.com/bytedance/Dolphin 2025年5月&#xff0c;字节开源了文档解析Dolphin&#xff0c;让文档解析效率提升83%。本文将深入解析字节跳动最新开源的Dolphin模型&#xff0c;先看理论再实战体验。 现实…

Web3怎么本地测试连接以太坊?

ETHEREUM_RPC_URLhttps://sepolia.infura.io/v3/你的_INFURA_API_KEY 如果你没有 Infura Key&#xff0c;注册 Infura 或 Alchemy&#xff0c;拿一个免费测试网节点就行&#xff1a; Infura&#xff1a;https://infura.io Alchemy&#xff1a;Alchemy - the web3 developme…

深化生态协同,宁盾身份域管完成与拓波软件兼容互认证

在信创产业蓬勃发展的浪潮下&#xff0c;行业生态的兼容适配决定了信创产品是否好用。近日&#xff0c;宁盾身份域管与拓波软件 TurboEX 邮件系统完成兼容互认证。测试结果显示宁盾身份域管&#xff08;信创版&#xff09;与 TurboEX 邮件服务器软件相互良好兼容&#xff0c;运…

HDFS存储原理与MapReduce计算模型

HDFS存储原理 1. 架构设计 主从架构&#xff1a;包含一个NameNode&#xff08;主节点&#xff09;和多个DataNode&#xff08;从节点&#xff09;。 NameNode&#xff1a;管理元数据&#xff08;文件目录结构、文件块映射、块位置信息&#xff09;&#xff0c;不存储实际数据…

Function calling的过程

文章目录 逐段讲清 **LLM Function Calling&#xff08;函数调用&#xff09;** 的典型链路。1. 角色与概念 | Actors & Concepts2. 全流程时序 | End-to-End Sequence3. 关键细节 | Key Implementation Notes4. 最小可用示例&#xff08;伪代码&#xff09; | Minimal Exa…

GlobalExceptionHandler 自定义异常类 + 处理validation的异常

在 Spring Boot 项目中&#xff0c;​自定义异常通常用于处理特定的业务逻辑错误&#xff0c;并结合全局异常处理器&#xff08;ControllerAdvice&#xff09;统一返回结构化的错误信息。 一.全局异常处理器&#xff1a; 1. 自定义异常类​ 定义一个继承自 RuntimeExceptio…

软件测试过程中如何定位BUG

在软件测试过程中&#xff0c;定位BUG是确保软件质量的关键环节。有效的BUG定位不仅能帮助开发人员快速修复问题&#xff0c;还能提升整个软件项目的效率。以下是软件测试中定位BUG的系统性方法和策略&#xff1a; 一、复现BUG 步骤&#xff1a; 收集信息&#xff1a;记录BUG…

如何优化Elasticsearch的搜索性能?

优化 Elasticsearch 的搜索性能需要从索引设计、查询优化、硬件配置和集群调优等多方面入手。以下是系统化的优化策略和实操建议: 一、索引设计优化 1. 合理设置分片数 分片大小:单个分片建议 10-50GB(超过50GB会影响查询性能)。分片数量: 总分片数 ≤ 节点数 1000(避免…

台式电脑CPU天梯图_2025年台式电脑CPU天梯图

CPU的选择绝对是重中之重,它关乎了一台电脑性能好坏。相信不少用户,在挑选CPU的时候不知道谁强谁弱,尤其是intel和AMD两款CPU之间。下面通过2025年台式电脑CPU天梯图来了解下这两款cpu. 2025年台式电脑CPU天梯图 2025年台式电脑CPU天梯图包含了老旧型号以及12代、13代、14代…

HarmonyOS_ArkTs_API(1)

HarmonyOS_ArkTs_API(1) 概述 此API服务模块是独自开发的应用程序的核心骨架&#xff0c;提供了鸿蒙OS ArkTS客户端组件和Java Spring Boot后端之间的强大通信接口。该模块采用清晰的架构方法处理所有HTTP请求、响应解析和错误处理&#xff0c;确保系统各部分间通信的一致性和…

matlab雷达定位仿真

一、边扫描边跟踪雷达仿真 边扫描边跟踪&#xff08;BISTAR&#xff09;雷达仿真是一种实时雷达信号处理的技术&#xff0c;用于模拟雷达系统的操作过程&#xff0c;特别是那些具备连续扫描能力的雷达。它的基本原理和流程可以分为以下几个步骤&#xff1a; &#xff08;1&…

互斥锁、自旋锁、读写锁、悲观锁、乐观锁的应用场景

一&#xff1a;并发 1.1MySQL并发事务访问相同记录 &#xff08;1&#xff09;读-读 不影响 &#xff08;2&#xff09;写-写 写的数据需要一个一个来&#xff0c;排队执行 &#xff08;3&#xff09;读-写 两次读…

KEYSIGHT N9320B是德科技N9320B频谱分析仪

KEYSIGHT N9320B是德科技N9320B频谱分析仪 附加功能&#xff1a; 频率范围&#xff1a;9 kHz 至 3 GHz 分辨率带宽&#xff1a;10 Hz 至 1 MHz DANL&#xff1a;-130 dBm&#xff0c;-148 dBm&#xff0c;带可选前置放大器 整体幅度精度&#xff1a;<1.5 dB 最小非零扫…

零基础开始的网工之路第十四天------Linux程序管理

目录 一、Linux程序与进程 1、程序,进程,线程的概念 2、程序和进程的区别 3、进程和线程的区别 二、Linux进程基础(生命周期) 1、进程生命周期 2、父子进程的关系 三、程序管理 1、常见的软件包类型 四、Linux操作系统启动流程详解 1、概述 2、启动流程核心阶段 1…