草庐IT

TCP-Socket

全部标签

php - 如何将 stream_socket_client 绑定(bind)到 php 中的接口(interface)?

我有一些在php中使用stream_socket_client(不是curl)的函数,我有多个eth1eth2...等接口(interface)与不同的ips所以我想在作为客户端连接时使用不同的接口(interface),我可以这样做吗?我在php.ini中找不到任何选项 最佳答案 这里是在stream_socket_client中添加IP接口(interface)的方法//connecttotheinternetusingthe'192.168.0.100'IP$opts=array('socket'=>array('bindto

php - socket_read()中$type参数的含义

我尝试使用PHP套接字创建从C#应用程序到PHP5.3脚本的tcp/ip套接字连接。C#应用程序应将JSON字符串发送到PHP脚本。我关于thesocket_readmanual的问题:它们是什么意思:"PHP_BINARY_READ(Default)-usethesystemrecv()function.Safeforreadingbinarydata."PHP_BINARY_READ到底是做什么用的,为什么在使用这个参数时要使用recv()函数?非常感谢任何帮助。 最佳答案 重要的部分是文档中关于其他选择的内容:PHP_NORM

PHP UDP socket_recv() 超时

我正在研究可以通过UDP套接字进行通信的服务器/客户端php脚本。我想知道是否有为socket_recv()函数实现timeout()的好方法。目前它在我的客户端中阻塞,等待确认。感谢您的意见! 最佳答案 我找到了我的问题的解决方案:socket_set_option()有选项SO_RCVTIMEO,它只为socket_recv()设置超时例如:socket_set_option($sock,SOL_SOCKET,SO_RCVTIMEO,array("sec"=>1,"usec"=>0));这将在我的套接字级别上为socket_re

PHP stream_socket_client() 警告

我正在为一个客户建立一个新的WordPress网站,今天我突然在屏幕顶部看到这个错误。我以前从未见过这个。任何想法可能导致现在发生这种情况?还有怎么解决?Warning:stream_socket_client():php_network_getaddresses:getaddrinfofailed:Nameorservicenotknownin/var/www/wp-includes/class-http.phponline787Warning:stream_socket_client():unabletoconnecttotcp://www.MY-DOMAIN.com:80(php

php - 带有 socket.io 和后端 php 的 Angular

我正在开发实时应用程序(聊天)并使用Angular,我的后端是php(codeigniterrestapi)对于mongodb中的数据库我在某处听说socket.io是套接字的最佳库(实时使用),我看到socket.io主要与node.js一起使用,所以我可能需要节点的基本知识或任何其他可行的方法来使用socket.io、angular和php 最佳答案 你有3种方式:使用node.js服务器这取决于您的API有多大。但在我看来,对于MongoDb和套接字,node.js会比PHP更好。为什么?MongoDB使用JSON格式,而No

php - SQLSTATE[08001] : [Microsoft][ODBC Driver 13 for SQL Server]TCP Provider: No connection could be made because the target machine actively refused it

我的学说存储库代码无法运行,但我能够正常访问数据库和读取表数据。我得到这个堆栈跟踪:EntityManager->getRepository('AppBundle:Person')insrc\AppBundle\Controller\PersonViewController.php(line18)publicfunctionindexAction(Request$request){$em=$this->getDoctrine()->getManager();$repo=$em->getRepository('AppBundle:Person');$persons=$repo->find

《图解TCP/IP》阅读笔记(第七章 7.1、7.2、7.3)—— 路由控制概念与路由控制算法

第七章路由协议本章旨在将详细介绍路由控制以及实现路由控制功能的相关协议7.1路由控制的定义在互联网这片汪洋大海中,数据就好似一叶扁舟,没有灯塔的指引,是难以寻得目的地的。这种进行正确方向引导的转发数据的处理,就叫做路由控制或路由。路由器根据路由控制表转发数据包,具体则是依赖于数据包中目标主机的IP地址与路由器控制表比较得出下一个应该接收的路由器。所以,路由控制表的正确性,就相当重要了。那么,是谁,又是怎样制作和管理路由控制表的呢?实际上,路由控制表分为静态和动态两种类型。静态路由指事先设置好路由器和主机中的路由信息且固定住的一种方法。动态路由则是指让路由协议在运行过程中自动设置路由控制信息的一

php - socket_recv 数据包缺少字节 PHP

我试图在PHP上接收数据包,但看起来socket_recv丢失了一些字节。我知道数据包发送成功:0:13:58.951742IP192.168.0.101.1458>192.168.0.107.8000:Flags[P.],seq1:7,ack1,win64240,length60x0000:4500002e631d40008006158cc0a80065E...c.@........e0x0010:c0a8006b05b21f406557d6284e87cadd...k...@eW.(N...0x0020:5018faf0e808000000686f6c6100P........ho

php - socket client查数据时socket server是 "hit"吗?

我设置了一个PHP服务器每秒写入一个套接字。while(1){$message="Hello,World!";socket_write($socket,$message,strlen($message));sleep(1);}然后我有一个Lua客户端(CoronaSDK),它每1/10秒检查一次套接字是否有数据:timer.performWithDelay(100,function()sock:receive()end,0)end我的问题是:每次运行sock:receive()时服务器是否“命中”?还是sock:receive()只检查本地缓冲区?重新表述这个问题:我运行sock:re

处理 socket.io 客户端的 PHP/C++ 服务器

有一个网站使用socket.io作为其“API”。从本质上讲,任何人都可以下载网站的源代码并对其进行修改以轻松制作自己的客户端。例如,我有六个客户端都运行相同的自定义客户端脚本。该脚本托管在我自己的域中,而不是使用socket.ioAPI的域中。我希望能够跟踪谁连接了,并保留了某些数据的总数。例如,如果每个客户端都有0.5余额,我希望他们能够知道总数是3余额,因为服务器。我能想到的最明显的方法是将AJAX与对MySQL的调用结合起来以跟踪事物,但这似乎是冗长的。我也可以做CURL,但这在技术上具有挑战性。是否有一种简单直接的方法可以从六个不同的socket.io客户端简单地计算余额并将