[PHP] 使用Socket提供Http服务
2024-08-24 11:26:38
我的SimpleLoader里面的一块
https://github.com/taoshihan1991/simpleloader
<?php
namespace Server; class Socket{
const PORT=1024;
public function create(){
$socket=socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
socket_bind($socket, "127.0.0.1",self::PORT);
socket_listen($socket,4);
echo "start http://127.0.0.1:1024\r\n";
while(true) {
$msgsock = socket_accept($socket);
$buf = socket_read($msgsock,9024);
if(preg_match("/\/(.*) HTTP\/1\.1/",$buf,$matchs)){
if($matchs[1]!="favicon.ico"){
echo $buf;
$_SERVER['PATH_INFO']=$matchs[1] ? $matchs[1] : "Index/Index/index";
\SimpleLoader::router();
$html=\SimpleLoader::pathInfo();
}
socket_write($msgsock,$html);
}else{
socket_write($msgsock,"hello world");
}
socket_close($msgsock);
}
socket_close($socket);
}
}
效果:
最新文章
- C++右值引用浅析
- [转]实战 SQL Server 2008 数据库误删除数据的恢复
- mysql for windows之my.ini优化
- for循环小题
- Cocos2d-x 3.0 事件系统【转】
- 修改UI中的值,无反应解决办法
- 31. Next Permutation
- MyBatis之五:动态sql语句
- 【转载】Linux小白最佳实践:《超容易的Linux系统管理入门书》(连载六)Linux的网络配置
- OGG问题 ORA-01403的处理办法
- java Serializable和Externalizable序列化反序列化详解--转
- JAVA之File类创建对象构造函数传参数需要注意的几点
- 【OpenCV新手教程之十八】OpenCV仿射变换 &;amp; SURF特征点描写叙述合辑
- NYOJ-915 +-字符串(贪心)
- 网站开发进阶(十二)JS实现打印功能(包括打印预览、打印设置等)
- java中的取整(/)和求余(%)
- ISP PIPLINE (十一) color correction
- MacBookPro磁盘空间不够
- 微信小程序下拉框之二维数组或对象
- nginx location分析