Introduction détaillée à la programmation php Socket

怪我咯
Libérer: 2023-03-13 16:48:01
original
2630 Les gens l'ont consulté

PHP utilise la bibliothèque de sockets de Berkley pour créer ses connexions. Vous pouvez savoir que le socket n’est qu’une structure de données. Vous utilisez cette structure de données socket pour démarrer une session entre le client et le serveur. Ce serveur est toujours à l'écoute et se prépare à générer une nouvelle session. Lorsqu'un client se connecte au serveur, il ouvre un port sur lequel le serveur écoute une session. A ce moment, le serveur accepte la demande de connexion du client, puis effectue une boucle . Le client peut désormais envoyer des informations au serveur, et le serveur peut envoyer des informations au client.
Pour générer un Socket, vous avez besoin de trois variables : un protocole, un type de socket et un type de protocole public. Vous avez le choix entre trois protocoles lors de la génération d'un socket. Continuez à lire ci-dessous pour obtenir le contenu détaillé du protocole.
Définir un type de protocole public est un élément essentiel pour la connexion

Commençons par un exemple simple --- une réception de caractère d'entrée chaîne, le traitement et le renvoi de cette chaîne au service TCP du client. Le code est le suivant :

<?php
// 设置一些基本的变量 
$host = "192.168.1.99"; 
$port = 1234; 
// 设置超时时间 
set_time_limit(0); 
// 创建一个Socket 
$socket = socket_create(AF_INET, SOCK_STREAM, 0) or die("Could not create 
socket\n"); 
//绑定Socket到端口 
$result = socket_bind($socket, $host, $port) or die("Could not bind to 
socket\n"); 
// 开始监听链接 
$result = socket_listen($socket, 3) or die("Could not set up socket 
listener\n"); 
// accept incoming connections 
// 另一个Socket来处理通信 
$spawn = socket_accept($socket) or die("Could not accept incoming 
connection\n"); 
// 获得客户端的输入 
$input = socket_read($spawn, 1024) or die("Could not read input\n"); 
// 清空输入字符串 
$input = trim($input); 
//处理客户端输入并返回结果 
$output = strrev($input) . "\n"; 
socket_write($spawn, $output, strlen ($output)) or die("Could not write 
output\n"); 
// 关闭sockets 
socket_close($spawn); 
socket_close($socket); 
?>
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!