php的socket连接代码
我正在编写一个简单的 php 套接字代码。
这是我的代码,
<?php
$address="127.0.0.1";
$port=9875;
echo "I am here";
if(false==($socket= socket_create(AF_INET,SOCK_STREAM, SOL_TCP)))
{
echo "could not create socket";
}
socket_bind($socket, $address, $port) or die ("could not bind socket");
socket_listen($socket);
if(($client=socket_accept($socket)))
echo "client is here";
?>
当我运行这个程序时,我的浏览器只显示等待本地主机。
我的代码有问题吗?
我正在使用 xammp 1.7.4 。
我想知道的另一件事是,如果我想获取 HTTP 或 FTP 请求,我是否只能更改端口号?
I am writing a simple php socket code.
Here is my code
<?php
$address="127.0.0.1";
$port=9875;
echo "I am here";
if(false==($socket= socket_create(AF_INET,SOCK_STREAM, SOL_TCP)))
{
echo "could not create socket";
}
socket_bind($socket, $address, $port) or die ("could not bind socket");
socket_listen($socket);
if(($client=socket_accept($socket)))
echo "client is here";
?>
when I run this program my browser only shows waiting for localhost.
Is there any problem in my code?
I am using xammp 1.7.4 .
Another thing I want to know if I want to get a HTTP or FTP request do I have change only the port number?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我验证了代码并在我的系统中进行了测试,它工作正常。运行客户端后显示“客户端在这里”。
文件名:server.php
首先运行server.php 文件。
文件:client.php
现在运行 client.php
你的输出应该是这样的(正如我在我的系统中得到的那样)
如果没有,请确保您的防火墙没有阻止该请求。如果您有防病毒软件,请暂时禁用它。
I verified the code and tested in my system and it works correctly. Showing as "client is here" after running the client.
File Name: server.php
First run the server.php file.
File: client.php
Now run the client.php
Your output should be like this (as I got in my system)
If not, make sure your firewall is not blocking the request. Temporarily disable antivirus if you have one.
这是等待的预期行为。
您编写的程序是一个套接字服务器,它准备侦听指定端口的连接,直到那时它才会等待。
您可以创建一个连接的客户端,以便您将看到“客户端在这里”的响应。客户端可以是任何编程语言,包括 PHP。
下面是 PHP 的示例代码(我没有验证)。
您可以查看此链接以获取 PHP 示例客户端代码。
编辑
That is the expected behaviour of waiting.
The program you have written is a socket server which is ready to listen to the connection with the specified port, until then it will wait.
You can create a client who connects so that you will see the response "Client is here". The client can be any programming language including PHP.
Below is a sample code in PHP (I didn't verify it).
You can check this link for sample client code in PHP.
EDIT