欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PHP_EOL使用 Apache Mina框架实践

程序员文章站 2022-07-05 23:29:15
1.为什么要用Apache Mina框架 ApacheMina Server 是一个网络通信应用框架,Mina 可以帮助我们快速开发高性能、高扩展性的网络通信应用,Mina 提供...
1.为什么要用Apache Mina框架

ApacheMina Server 是一个网络通信应用框架,Mina 可以帮助我们快速开发高性能、高扩展性的网络通信应用,Mina 提供了事件驱动、异步(Mina 的异步IO 默认使用的是JAVANIO 作为底层支持)操作的编程模型。

2.ApacheMina框架使用

Mina的执行流程:

      > IoService:这个接口在一个线程上负责套接字的建立,拥有自己的Selector,监听是否有连接被建立。

      > IoProcessor:这个接口在另一个线程上,负责检查是否有数据在通道上读写,也就是说它也拥有自己的Selector,这是与我们使用JAVA NIO 编码时的一个不同之处,通常在JAVA NIO 编码中,我们都是使用一个Selector,也就是不区分IoService与IoProcessor 两个功能接口。另外,IoProcessor 负责调用注册在IoService 上的过滤器,并在过滤器链之后调用IoHandler。

      >IoFilter:这个接口定义一组拦截器,这些拦截器可以包括日志输出、黑名单过滤、数据的编码(write方向)与解码(read 方向)等功能,其中数据的encode 与decode是最为重要的、也是你在使用Mina 时最主要关注的地方。

      >IoHandler:这个接口负责编写业务逻辑,也就是接收、发送数据的地方。

换行符

unix系列用 \n

windows系列用 \r\n

mac用 \r

PHP中可以用PHP_EOL来替代,以提高代码的源代码级可移植性

如:

<?php

echo PHP_EOL;

//windows平台相当于    echo “\r\n”;

//unix\linux平台相当于    echo “\n”;

//mac平台相当于    echo “\r”;

?>

类似常用的还有

DIRECTORY_SEPARATOR

可以用函数get_defined_constants()来获取所有PHP常量