首页 > 资讯列表 >  本页面生成深入浅出专题报道,深入浅出滚动新闻,深入浅出业界评论等相关报道!
  • php自动加载机制的深入分析

    php自动加载机制的深入分析

    本文为大家讲解的是php中自动加载机制的深入分析进解,感兴趣的同学参考下。 一、php中实现自动加载的方法 1.使用require,include,require_once,include_once手工进行加载...

    PHP 2014-12-24 22:00:07
  • 深入解析PHP内存管理之谁动了我的内存

    深入解析PHP内存管理之谁动了我的内存

    本文为大家讲解的是深入解析PHP内存管理之谁动了我的内存,感兴趣的同学参考下。 首先让我们看一个问题: 如下代码的输出, var_dump(memory_get_usage()); $a = "laruence"; var_dump(memory_get_usage()); unset($a); var_dump(memory_get_usage()); 输出(在我的个人电脑上, 可能会因为系统,PHP版本,载入的扩展不同而不同): int(90440) int(90640) int(90472) 注意到 90472-90440=32, 于是就有了各种的结论, 有的人说PHP的unset并不真正释放内存, 有的说, PHP的unset只是在释放大变量(大量字符串, 大数组)的时候才会真正free内存, 更有人说, 在PHP层面讨论内存是没有意义的. 那么, 到底unset会不会释放内存? 这32个字节跑哪里去了? 要回答这个问题, 我将从俩个方面入手: 这32个字节去哪里了 首先我们要打破一个思维: PHP不像C语...

    PHP 2014-12-23 07:12:03
  • 深入理解PHP之数组(遍历顺序)

    深入理解PHP之数组(遍历顺序)

    本文为大家讲解的是深入理解PHP之数组(遍历顺序) ,感兴趣的同学参考下. 经常会有人问我, PHP的数组, 如果用foreach来访问, 遍历的顺序是固定的么? 以什么顺序遍历呢? 比如: <?php $arr['laruence'] = 'huixinchen'; $arr['yahoo'] = 2007; $arr['baidu'] = 2008; foreach ($arr as $key => $val) { //结果是什么? } 又比如: <?php $arr[2] = 'huixinchen'; $arr[1] = 2007; $arr[0] = 2008; foreach ($arr as $key => $val) { //现在结果又是什么? } 要完全了解清楚这个问题, 我想首先应该要大家了解PHP数组的内部实现结构……… PHP的数组 在PHP中...

    PHP 2014-12-19 09:48:08
  • PHP设计模式之解释器模式的深入解析

    PHP设计模式之解释器模式的深入解析

    本文以示例的形式向大家介绍了PHP设计模式之解释器模式的深入解析,感兴趣的同学参考下。 解释器(Interpreter)模式,它包括一个具有复合类分层结构的文法表现,规则是映射到类,跟随在文法后面的表达式可以被转换成一个抽象的语法树,除了复合模式的实例对象图外,没有别的内容...

    PHP 2014-12-19 08:57:07
  • PHP中的Session和Cookie深入分析

    PHP中的Session和Cookie深入分析

    本文为大家讲解的是PHP中的Session和Cookie深入分析,感兴趣的同学参考下。 在一个页面设置一个cookie时,必须刷新或到下一个页面才可以用 $_COOKIE 得到变量的值. 原因是因为当页面第一次被浏览器访问载入时,页面中的 cookie 会被设置,将其发送存储到客户端指定的存储位置,所以$_COOKIE没有接收到客户端发送过来的 cookie 变量的值,当刷新或到下一个页面时,客户端会在页面程序在服务器端运行之前,发送与该地址相对应的 cookie到服务器端,所以 $_COOKIE 可以得到的值! 说白了就是当每一个页面被访问时,如果客户端找到了与访问地址相对应的 cookie 时,会在程序在服务器端运行之前发送这个 cookie 到服务器端. (个人对此的看法) 本人表达能力不强,如有不明,还请抱歉! php中设置cookie数组的时候,不可以用像php中的那个添加数据的方法: <?php setcookie('my_cookie[]', 1); setcookie('my_cookie[]', ...

    PHP 2014-12-19 02:36:04
  • 深入理解PHP原理之Session Gc的一个小概率Notice

    深入理解PHP原理之Session Gc的一个小概率Notice

    PHP Notice: session_start(): ps_files_cleanup_dir 如果在ubuntu/Debian下, 采用apt安装的PHP, 那么在使用Session的时候, 就可能会有小概率遇到这个提示. PHP Notice: session_start(): ps_files_cleanup_dir: opendir(/var/lib/php5) failed: Permission denied (13) in /home/laruence/www/htdocs/index...

    PHP 2014-12-16 08:54:05
  • 深入解析PHP垃圾回收机制对内存泄露的处理

    深入解析PHP垃圾回收机制对内存泄露的处理

    本文为大家深入解析了PHP垃圾回收机制对内存泄露的处理方法,感兴趣的同学参考下。 上次说到了refcount和is_ref,这里来说说内存泄露的情况 $a = array(1, 2, &$a); unset($a); 在老的PHP版本中,这里就会出现内存泄露,分析如下: 执行第一行,可以知道$a和$a[2]指向的zval refcount=2,is_ref=1 然后执行第二行,$a将会从符号表中被删除,同时指向的zval的refcount--,此时refcount=1,因为refcount!=0,故此zval不会被当做垃圾回收,但是此时我们却失去了$a[2]指向这个zval的入口,因此这个zval成了一块内存垃圾 同样的道理可以发生在类内部引用里,例如 $a = new Man(); $a->self = &$a; unset($a); 那么如何解决这种问题呢,新的GC机制采用了一个算法来解决这个问题 PHP有一个root buffer用来存储zval的节点信息,当root...

    PHP 2014-12-15 13:21:08
  • 深入PHP变量存储的详解

    深入PHP变量存储的详解

    本文是对PHP变量的存储进行了详细的分析介绍,感兴趣的朋友参考下 1.1.1 zval结构 Zend使用zval结构来存储PHP变量的值,该结构如下所示: typedef union _zvalue_value {  long lval;    /* long value */  double dval;    /* double value */  struct {   char *val;   int len;  } str;  HashTable *ht;    /* hash table value */  zend_object_value obj; } zvalue_value; struct _zval_struct {  /* Variable information */  zv...

    PHP 2014-12-15 07:24:08
  • 诺基亚Lumia920升级到Lumia930的深入感受

    诺基亚Lumia920升级到Lumia930的深入感受

    站长搜索(www.adminso.com):诺基亚Lumia920升级到Lumia930的深入感受 WP之家讯   目前Windows Phone还没有推出下一代具有明显色彩标志的旗舰智能手机,很多人也在迟疑是否需要将手中的Lumia920升级到Lumia930,还是继续等待Win10(WP10)旗舰。外媒编辑在2014年8月7日购买了一部Lumia930升级装备,虽然如此,但是之前Lumia930的姊妹Lumia Icon已经发布,Lumia930并非真正意义上的新旗舰...

    业界动态 2014-12-09 10:12:08
  • 亚马逊深入O2O服务:新推餐馆外卖订送

    亚马逊深入O2O服务:新推餐馆外卖订送

    站长搜索讯 全球电子商务巨头亚马逊的触角,正在向一切可能的领域延伸。不久前,该公司刚刚推出了自有品牌的纸尿布等产品,据PCMAG等美国科技新闻网站报道,亚马逊日前又开始试验性推出本地餐馆外卖接单的服务...

    电子商务 2014-12-08 22:21:14
  • 深入理解PHP原理之异常机制

    深入理解PHP原理之异常机制

    本文为大家讲解的是PHP中的异常处理机制分析说明,感兴趣的同学参考下。 PHP的异常机制的原理是什么? 在PHP每一个可独立执行的op array最后的ZEND_HANDLE_EXCEPTION是用来干什么呢? 让我们从一个问题说起, 上周的时候, blue5tar提了一个问题:”对于下面的代码, onError明明执行了, 但是onException却没有执行, 为什么?”. <?php function onError($errCode, $errMesg, $errFile, $errLine) { echo "Error Occurredn"; throw new Exception($errMesg); } function onException($e) { echo $e->getMessage(); } set_error_handler("onError"); set_exception_handler("onException")...

    PHP 2014-12-07 12:09:26
  • 深入理解PHP原理之错误抑制与内嵌HTML分析

    深入理解PHP原理之错误抑制与内嵌HTML分析

    本文为大家讲解的是深入理解PHP原理之错误抑制与内嵌HTML分析,感兴趣的同学下。 PHP支持内嵌HTML的, 那么对于PHP文件中, PHP标签外的HTML会怎么处理呢? 它和直接输出HTML有什么区别么? PHP提供了一个错误抑制符'@', 它是通过什么方式来阻止错误输出呢? 我又该在什么时候使用它呢? 这是这俩天一些网友提到的共同问题, 今天就索性整体回答下, 备后来人翻阅. PHP文件内嵌HTML的处理方式 在PHP中, 所有在标签外的字符, 在词法分析过程中, 都会翻译成T_INLINE_HTML token, 在语法分析的时候, 所有的T_INLIE_HTML都会被分配ZEND_ECHO输出. 也就是说: <?php while($con) { ?> laruence <?php } ?> 会生成一条OPLINE: T_ECHO, 而操作数是”laruence”; 就结果来说, 上面的代码, 其实和下面的结果一样: <?php while($c...

    PHP 2014-12-07 04:33:03

站长搜索

http://www.adminso.com

Copyright @ 2007~2024 All Rights Reserved.

Powered By 站长搜索

打开手机扫描上面的二维码打开手机版


使用手机软件扫描微信二维码

关注我们可获取更多热点资讯

站长搜索目录系统技术支持