`
student_lp
  • 浏览: 437204 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
一、垃圾回收实现方式      在以前的php中用到的是引用计数机制处理垃圾回收问题,但是这个机制存在一个弊端,就是无法处理循环引用引起的内存泄露。然而在php5.3.0以后的版本中(包含5.3.0)使用了专门GC机制(同步算法 ...
一、引用计数基本知识     每个php变量存在一个叫“zval”的变量容器中,一个zval变量容器,除了包含变量的类型和值,还包括两个字节的额外信息。第一个是“is_ref",是个bool值,用来标识这个变量是否属于引用集合。通过这个字节,php引擎才能把普通变量和引用变量区分开来,由于php允许用户通过使用&来使用自定义引用,zval变量容器中还有一个内部引用计数机制来优化内存使用。第二个额外字节是”refcount“,用以表示指向这个zval变量容器的变量个数。所有的符号存在一个符号表中,其中每个符号都有作用域(脚本中的函数或方法也都有作用域)。    ① 当一个 ...
     我们知道php是一个弱类型,动态的脚本语言。所谓弱类型,就是说php并不严格验证变量类型,在声明一个变量的时候,并不需要指明它保存的数据的类型。例如: $var = 1; //int $var = "laruence"; //string $var = 1.0002; //flo ...
    SAPI:Server Application Programming Interface服务端应用编程端口。他就是php与其他应用交互的接口,php脚本要执行有很多中方式,通过web服务器,或者直接在命令行行下,也可以嵌入其他程序中。SAPI提供了一个和外部通信的接口,常见的SAPI有:cgi、fast-cgi、cli、Apache模块的dll等。 1、CGI      CGI即通用网关接口(common gatewag interface),它是一段程序,通俗的讲CGI就象是一座桥,把网页和WEB服务器中的执行程序连接起来,它把HTML接收的指令传递给服务器的执 行程序,再把服 ...
     这里介绍的php生命周期,就是php在请求调用过程中,经过了那些操作,都是完成了什么工作。要想了解这个过程,一切就需要从ASPI开始。      SAPI(Server Application Propramming interface)指的是PHP具体应用的编程接口,他提供 ...
1、编写一个自定义函数提取这段路径的的后缀名。 例如:http://www.baidu.com/hello/test.php.html?a=3&b=4需要取出php或.php function geturltype($url){ $info=parse_url($url); return end(explode('.',$info['path'])); } 2、写一个函数,算出两个文件的相对路径,如 $a = /a/b/c/d/e.php; $b= /a/b/12/34/c.php; 计算出$b相对于$a的相对路径应该是 ../../c/d f ...
1、http状态码,及其说明。 答:php通过设置header信息返回http状态码,例如返回404:header(“HTTP/1.1 404 Not Find”);     HTTP状态码是用以表示网页服务器HTTP响应状态的3位数字代码。所有状态码的第一个数字代表了响应的五种状态之一。 1xx 消息,这一类型的状态码,代表请求已被接受,需要继续处理。这类响应是临时响应,只包含状态行和某些可选的响应头信息,并以空行结束。 100客户端应当继续发送请求。这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝。客户端应当继续发送请求的剩余部分,或者如果请 ...
1、 请简述echo、print和print_r的区别? 答:echo和print实际上都不是函数,而是一个语法结构。不同的是echo返回值是void,并且可以输出多个参数值;而print返回值是int(总是返回1),且只能输出一个字符串值。Print_r是一个输出函数,返回值为boolean型,
1、  判断一个变量是否存在的函数:isset 判断一个变量是否为null的函数:is_null 判断一个变量是否为空的函数:empty 销毁一个变量的函数:unset 2、$a =array(1,2);unset($a[0]);print_r($a);echo count($a);请写出输出结果: 答:array(1=>2)  ;  1
     php-fpm存在两种方式,一种是直接开启指定数量的php-fpm进程,不再增加或者减少;另一种则是开始的时候开启一定数量的php-fpm进程,当请求量变大的时候,动态的增加php-fpm进程数到上限,当空闲的时候自动释放空闲的进程数到一个下限。      这两种不同的执行方式,可以根据服务器的实际需求来进行调整。      这里先说一下涉及到这个的几个参数吧,他们分别是pm、pm.max_children、pm.start_servers、pm.min_spare_servers和pm.max_spare_servers。      pm表示使用那种方式,有两个值可以选择,就 ...
#运行用户user www-data; #启动进程,通常设置成和cpu的数量相等worker_processes 1; #全局错误日志及PID文件error_log /var/log/nginx/error.log;pid /var/run/nginx.pid; #工作模式及连接数上限events {use epoll; #epoll是多路复用IO(I/O Multiplexing)中的一种方式,但是仅用于linux2.6以上内核,可以大大提高nginx的性能worker_connections 1024;#单个后台worker process进程的最大并发链接数# multi_acce ...
1、环境准备。查看是否已经安装gcc和gcc-c 。 which gcc;如果没有安装运行:yum -y install gcc which g ;如果没有安装运行:yum -y install gcc-c 2、安装pcre。下载地址:http://download.chinaunix.net/download/0008000/7913.shtml(这个主要用来处理http-rewrite。如果要支持php等脚本请求转发就必须安装该模块) ①下载:pcre-8.30.tar.bz2 ②解压并安装:  tar -jxvf pcre-8.30.tar.bz2 pcre-8.30(其中j-bz2处理 ...
一、安装GD,这是php对图片库的支持库。 ①安装freetype(这是一个字体引擎)。 下载:http://download.chinaunix.net/download/0004000/3295.shtml 解压:tar -zxvf freetype-version.tar.gz. 进入:cd freetype-version. 预编译:./configure --prefix=/usr/local/freetype --enable-shared --enable-static; 编译安装:make && make install。 ②安装libpng( ...
1、环境查看与准备: ①查看centos在安装的时候,是否已经mysql服务。由于centos默认安装的mysql有时候版本太低,而且也不符合我们生产环境的要求,一般我们都自己安装。查看mysql是否已经安装:rpm -qa |grep mysql;如果发现有(mys ...
①、修改/etc/sysconfig/iptables配置,开发对外接口。修改CentOS防火墙时注意:一定要给自己留好后路,留VNC一个管理端口和SSh的管理端口 下面是一个iptables的示例:# Firewall configuration written by system-config-securitylevel# Manual customization of this file is not recommended.*filter:INPUT ACCEPT [0:0]:FORWARD ACCEPT [0:0]:OUTPUT ACCEPT [0:0]:RH-Firewall ...
Global site tag (gtag.js) - Google Analytics