Alle Programmiersprachen bieten den Mechanismus zur Implementierung der Server- und Client-Kommunikation. Gemäß diesem Mechanismus ermöglicht die Anwendung dem Server und dem Client, Daten zwischen ihnen auszutauschen. Ähnlich wie die anderen Programmiersprachen stellt uns auch PHP diesen Mechanismus zur Verfügung. Socket-Programmierung kann als Programmieransatz definiert werden, bei dem der Server und der Client als Anwendung dienen und eine Verbindung zwischen beiden hergestellt werden muss, um die Kommunikation zwischen ihnen zu erleichtern. In Bezug auf PHP können wir damit auch das Konzept der Socket-Programmierung umsetzen. In diesem Artikel erfahren Sie, wie Sie diese Socket-Programmierung mithilfe der Programmiersprache PHP implementieren.
WERBUNG Beliebter Kurs in dieser Kategorie PROGRAMMIERSPRACHEN - Spezialisierung | 54 Kursreihe | 4 ProbetestsStarten Sie Ihren kostenlosen Softwareentwicklungskurs
Webentwicklung, Programmiersprachen, Softwaretests und andere
Die Socket-Klassenmethoden sind die speziellen Funktionen, mit denen wir die Socket-Programmierung implementieren können. Das Programm, das geschrieben werden muss, um die Funktionalitäten der Socket-Programmierung bereitzustellen, verwendet die vordefinierten Socket-Funktionen. Diese Funktionen bestehen aus den Anweisungen, die die eigentliche Rolle bei der Socket-Programmierung übernehmen. Nachfolgend sind einige der Socket-Funktionen aufgeführt.
In diesem Abschnitt sehen Sie den Code, der zur Implementierung der clientseitigen Socket-Programmierung verwendet wird. Das unten erwähnte Beispiel enthält die Post- und Hostdetails, die zum Erstellen der Socket-Verbindung verwendet werden. Sobald die Verbindung hergestellt ist, tauscht sie einige Nachrichten aus und erwartet eine Antwort vom Server.
<?php $port_number = 1230; $IPadress_host = "127.0.0.1"; $hello_msg= "This is server"; echo "Hitting the server :".$hello_msg; $socket_creation = socket_create(AF_INET, SOCK_STREAM, 0) or die("Unable to create connection with socket\n"); $server_connect = socket_connect($socket_creation, $IPadress_host , $port_number) or die("Unable to create connection with server\n"); socket_write($socket_creation, $hello_msg, strlen($hello_msg)) or die("Unable to send data to the server\n"); $server_connect = socket_read ($socket_creation, 1024) or die("Unable to read response from the server\n"); echo "Message from the server :".$server_connect; socket_close($socket_creation); ?>
Im obigen Beispiel ist die Portnummer 1230, mit der das Programm versucht, eine Verbindung herzustellen. Die IP-Adresse des Hosts ist die IP des lokalen Hosts. Wenn jemand bereit ist, mit dem Remote-Server zu interagieren, kann er die IP-Adresse des Servers angeben. Anschließend wird die Nachricht an den Server gesendet, der auf der Antwortseite angezeigt wird. Die Socket-Erstellung wird anschließend verarbeitet. In diesem Programm gibt es einen geeigneten Mechanismus zur Fehlerbehandlung mithilfe der Die-Methode. Wenn etwas schief gelaufen ist, wird in diesem Fall die Methode widerrufen und die darin angegebene Meldung wird angezeigt.
The example detailed in this section will be having the PHP codes that will be leveraged to implement the socket programming at the server-side. The details of the IP and the port number used in the last example will remain the same in this example as well. This example’s main difference will make the core difference that separates it from the client-side socket programming language. Lets process to understand the PHP code for server-side socket programming.
<?php $port_number = 1230; $IPadress_host = "127.0.0.1"; set_time_limit(0); $socket_creation = socket_create(AF_INET, SOCK_STREAM, 0) or die("Unable to create socket\n");$socket_outcome = socket_bind($socket_creation, $IPadress_host , $port_number ) or die("Unable to bind to socket\n"); $socket_outcome = socket_listen($socket_creation, 3) or die("Unable to set up socket listener\n"); $socketAccept = socket_accept($socket_creation) or die("Unable to accept incoming connection\n"); $data = socket_read($socketAccept, 1024) or die("Unable to read input\n"); $data = trim($data); echo "Client Message : ".$data; $outcome = strrev($data) . "\n"; socket_write($socketAccept, $outcome, strlen ($outcome)) or die("Unable to write output\n"); socket_close($socketAccept); socket_close($socket_creation); ?>
In the above example, the program has been developed to work in the localhost. The IP address mentioned here belongs to the localhost, and the port number can run the TCP and UDP service on that. The initial step is always the creation of the socket, as it is something that will be used throughout the program. Later the socket has been bonded with the specified values, which will help in functioning. The methods used in this program have a predefined meaning that can be used for a specific purpose. Once everything goes well, the program will work accordingly and will close the socket connection eventually.
The socket programming language is used to let the application work on the server and the client model. This approach of programming lets us establish the connection between the server and the client so that the exchange of the data could be facilitated. To make the socket programming easy and convenient, PHP has provided predefined methods where all the methods have some unique tasks assigned to them.
Das obige ist der detaillierte Inhalt vonSocket-Programmierung in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!