当前位置: 首页 > 工具软件 > ichat > 使用案例 >

layim mysql_ichat系统说明 · ThinkPHP5+workerman+layIM打造聊天系统 · 看云

全冥夜
2023-12-01

## ThinkPHP5+workerman+layIM打造聊天系统---ichat

>[danger] 写在最上面,本教程,如果你有layim资源,照着文档来,肯定可以做出来一个可用的产品。为什么还卖源码,是为了当你不想自己跟着做,可以找我来买。别自己又没耐心看,学习,又说我卖源码。

>[danger] 线上体验地址,震撼来袭。在浏览器 访问 http://www.baiyf.com/ichat 即可体验效果。通过手机浏览器会自动跳转到 手机版。手机版 功能有限,目前只是有聊天的功能。

服务器环境是 lnmp 的,因此,本套系统随时基于 win 平台。这个演示系统也告诉你了,他不需要进行多少修改,就可以在 linux 下面跑起来。

* ThinkPHP5 是ThinkPHP 3.X系列之后的重量级产品,以出色的架构设计,强劲的性能闻名。很适合我们快速的开发成熟的商用系统。到目前为止,github上也出现了很多成熟的thinkphp5快速开发的通用后台产品。在这里给自己的一个项目做个广告:[snake通用后台](https://github.com/nick-bai/snake),算的上最早的一批tp5通用后台了,功能很简单,便于新手快速的理解和使用tp5。到写作此文章开始,已经有139个star了。

* Workerman是一款纯PHP开发的开源高性能的PHP socket 服务器框架。被广泛的用于手机app、移动通讯,微信小程序,手游服务端、网络游戏、PHP聊天室、硬件通讯、智能家居、车联网、物联网等领域的开发。 支持TCP长连接,支持Websocket、HTTP等协议,支持自定义协议。拥有异步Mysql、异步Redis、异步Http、异步消息队列等众多高性能组件。它的作者是来自鹅厂的大神。本系统 laychat 采用的是 Wokerman的 GatewayWorker3.X系列框架。文档可参考:[GetwayWorker手册](http://www.workerman.net/gatewaydoc/)

* layIM是原阿里的大神 贤心倾力打造的一款Web即时通讯前端解决方案。界面优美,功能强悍,仿真度高。官网:[layim官网](http://layim.layui.com/),手册:[layim手册](http://www.layui.com/doc/modules/layim.html)

**聊天部分功能清单**

* * * * *

* 聊天用户的注册

* 聊天用户的登录

* 修改个人资料

* 修改个性签名

* 切换在线状态

* 按条件搜索添加好友

* 系统消息盒子

* 添加好友申请与同意/拒绝好友

* 好友聊天

* 创建群组

* 按条件查找群

* 申请加入群组

* 管理我的群组

* 群组聊天

* 右键退出我的群组

* 聊天发送语音

* 聊天发送图片

* 聊天发送文件

* 空间的说说发表,评论功能

* 查看个人和群聊记录

* 好友右键功能

1. 进入好友空间

1. 将好友加入黑名单

1. 移动好友分组

1. 删除好友

1. 举报好友

**大致了解一下外观**

[了解外观](http://fly.layui.com/jie/6943.html)

**本系统用到的全部源码**

* * * * *

我会在本套教程中,全部展示这些源码,展示源码的方式如:

~~~

// +----------------------------------------------------------------------

// | laychat-v3.0

// +----------------------------------------------------------------------

// | Author: NickBai <1902822973@qq.com>

// +----------------------------------------------------------------------

namespace app\admin\controller;

use think\Controller;

class Chat extends Controller

{

public function index()

{

if(request()->isPost()){

$data = input('post.');

$data['file_ext'] = trim($data['file_ext']);

$data['img_ext'] = trim($data['img_ext']);

writeCtConfig($data);

return json(['code' => 1, 'data' => '', 'msg' => '配置成功']);

}

$config = readCtConfig();

empty($config) &&

$config = ['file_size' => 2, 'file_ext' => 'zip|rar', 'img_size' => 2, 'img_ext' => 'png|jpg|gif'];

$this->assign([

'config' => $config,

'up_size' => ini_get('upload_max_filesize')

]);

return $this->fetch();

}

}

~~~

你可以跟着教程,一步一步搭建属于自己的 webIM系统。

**本地环境的注意事项**

* * * * *

本次系统演示,采用的 phpstudy 这个集成环境,php版本为 5.6.27。服务器 以apache 为例,请保持与我一致,或者自己修改其中不兼容的部分。

**其他建议**

* * * * *

1. 本套系统牵扯到的 websocket相关的知识,以及tcp协议的相关知识,不懂的可以百度做一些功课。也可以通过我的博客:[我的博客](http://www.cnblogs.com/nickbai/),了解一些相关的知识。

1. 本系统是基于windows平台的学习版本,当然你只需要下载linux版本的workerman即可轻松的实现linux平台下的应用,为了演示和学习的方便,本系统基于windows平台下讲解。

1. 数据库不了解功能的 可以参考 《数据字典》 这一章节。

1. 由于讲解这个教程的时候,我的代码已经完成了,没办法一步一步的完全拆开介绍。因此,我会先全部放出完成的js代码,然后顺着js的接口,一步一步的对php代码和workerman代码进行讲解。这些js代码,我会首先放出,方便你在跟着教程的同时,有代码依据。

1. 有些workerman和layIM中的方法,可能没有讲到,如有不理解的,可以自行查找手册。手册写的都很明确。

## 郑重声明

>[danger] 本系统用到的 layIM 为非开源程序。请务必到官网进行授权获得资源。本教程源码部分,不会放出 layim.js 这个源码。

 类似资料: