1.echo和print的区别
- echo和print都可以输出字符串
- echo没有返回值,print有返回值
- echo可以同时输出多个字符串,print一次只能输出一个
- 两者都可以不带括号使用,但是print有返回值,所以带上括号print更像是函数。但其实两者都是语言结构,并不是函数
- 因为没有返回值,所以echo的效率稍微高一点
注意 echo输出多个时,如果带括号的格式
echo 'echo','echo2';
echo ('echo'),('echo2');
2.Apache和Nginx的比较
功能比较
Apache和Nginx都是HTTP服务器软件,都采用模块化结构设计,都支持正向反向代理、虚拟主机、URL重写、压缩传输、ssl加密传输等
在处理链接方式上,Nginx支持epoll,而Apache不支持
Nginx优点
- 轻量级,占用资源少
- 处理静态资源比Apache更高效
- Nginx处理请求是异步非阻塞,抗并发能力强
- 高度模块化的设计,编写模块简单
社区活跃
Apache优点
- rewriter,比Nginxrewriter强大
- 模块超多,使用方便
- bug少,超稳定
epoll(freebsd 上是 kqueue )网络IO 模型是nginx 处理性能高的根本理由
最核心的区别在于apache是同步多进程模型,一个连接对应一个进程;nginx是异步的,多个连接(万级别)可以对应一个进程 。