基于PHP的web实时聊天程序,1对1在线实时聊天,不能1对多,也不能多对1
发送消息比较简单,因为有客户端的提交操作可以识别
但是接收消息应该怎么设计比较好?
我的想法是:能不能让接收方只在发送方发送消息以后再执行接收操作,在发送方没有发送消息时,接收方则不会请求数据。
另外,一个用户既是发送方,同时也是接收方,主要是取决于用户当前的操作
回复讨论(解决方案)
看你说的好像还是在一般网页提交的思路
连天还是考虑长连接+socket/websocket吧
看你说的好像还是在一般网页提交的思路
连天还是考虑长连接+socket/websocket吧
目前我查到的资料有三种说法(不知道是不是有重复):
1、长连接
2、轮询
3、websocket
不知道这三种是不是都可以完成我说的目标?
长连接+socket如果没有控件在浏览器实现并不容易
websocket是html5的,并非所有浏览器都支持,只有较新版本的可以尝试
ajax轮询网上有例子,可以搜索一下
长连接+socket如果没有控件在浏览器实现并不容易
websocket是html5的,并非所有浏览器都支持,只有较新版本的可以尝试
ajax轮询网上有例子,可以搜索一下
那这么说的话,应该是用ajax轮询了吧,那这个情况的话,应该是用长轮询了吧

Laravel simplifies handling temporary session data using its intuitive flash methods. This is perfect for displaying brief messages, alerts, or notifications within your application. Data persists only for the subsequent request by default: $request-

The PHP Client URL (cURL) extension is a powerful tool for developers, enabling seamless interaction with remote servers and REST APIs. By leveraging libcurl, a well-respected multi-protocol file transfer library, PHP cURL facilitates efficient execution of various network protocols, including HTTP, HTTPS, and FTP. This extension offers granular control over HTTP requests, supports multiple concurrent operations, and provides built-in security features.

Laravel provides concise HTTP response simulation syntax, simplifying HTTP interaction testing. This approach significantly reduces code redundancy while making your test simulation more intuitive. The basic implementation provides a variety of response type shortcuts: use Illuminate\Support\Facades\Http; Http::fake([ 'google.com' => 'Hello World', 'github.com' => ['foo' => 'bar'], 'forge.laravel.com' =>

PHP logging is essential for monitoring and debugging web applications, as well as capturing critical events, errors, and runtime behavior. It provides valuable insights into system performance, helps identify issues, and supports faster troubleshoot

Do you want to provide real-time, instant solutions to your customers' most pressing problems? Live chat lets you have real-time conversations with customers and resolve their problems instantly. It allows you to provide faster service to your custom

Article discusses late static binding (LSB) in PHP, introduced in PHP 5.3, allowing runtime resolution of static method calls for more flexible inheritance.Main issue: LSB vs. traditional polymorphism; LSB's practical applications and potential perfo

The article discusses adding custom functionality to frameworks, focusing on understanding architecture, identifying extension points, and best practices for integration and debugging.

Alipay PHP...


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

SublimeText3 English version
Recommended: Win version, supports code prompts!

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

SublimeText3 Mac version
God-level code editing software (SublimeText3)

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.