文档章节

php7 引用成为一种类型

o
 osc_y8yehimr
发布于 2019/03/22 11:15
字数 163
阅读 14
收藏 0
php

钉钉、微博极速扩容黑科技,点击观看阿里云弹性计算年度发布会!>>>

 

<?php
$a="abc";   is_ref=0 ref_count=1
$b=$a;       is_ref=0 ref_count= 2
$c=&$a;     is_ref=1 ref_count 2 即a c 共用一个zval, b单独用一个zval 当然 ref_count为1
$c=2;

$a=range(10000);
$b=&$a;
count($a1);
相当于
$a1=$a; 那么在count内部需要复制$a,因为在php7之前 引用变量 和非引用变量不能使用同一个zval,必须分享
php7不分离,只有当$a1改变时,才分离

 

$a=range(10000)  refcount 1

$b=&$a   ref (refcount=2)  val(refcount=1)

$a1=$a   ref(refcount=2) val(refcount=2)

 

unset($a)  ref(refcount=1) val(refcount=2)

unset($b)  ref (refcount =0 delete) val(refcount = 1)

unset($a1)  val(refcount=0 回收内存  zend_string)

 

上一篇: php代码的opcode
下一篇: function参数
o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
深入理解PHP7内核之Reference

https://www.laruence.com/2018/04/08/3179.html 本文地址: https://www.laruence.com/2018/04/08/3179.html 转载请注明出处 问题 上一章说过引用(REFERENCE)在PHP5的时候是一个标志位, 而在...

osc_ky74f26k
03/19
4
0
深入理解PHP7内核之Reference

https://www.laruence.com/2018/04/08/3179.html 本文地址: https://www.laruence.com/2018/04/08/3179.html 转载请注明出处 问题 上一章说过引用(REFERENCE)在PHP5的时候是一个标志位, 而在...

osc_8nnvoyb1
03/19
1
0
PHP的垃圾回收机制

一、原理 php5和php7的垃圾回收机制都是利用引用计数。 二、php5和php7不同点 1、PHP5标量数据类型会计数,PHP7标量数据类型不再计数,不需要单独分配内存。 2、PHP7的zval 需要的内存不再是...

php开源社区
04/21
3
0
深入理解 PHP7 中全新的 zval 容器和引用计数机制

深入理解 PHP7 中全新的 zval 容器和引用计数机制 最近在查阅 PHP7 垃圾回收的资料的时候,网上的一些代码示例在本地环境下运行时出现了不同的结果,使我一度非常迷惑。 仔细一想不难发现问题...

osc_xy5ryfmp
2018/10/16
1
0
深入剖析PHP7内核源码(二)- PHP变量容器

简介 PHP的变量使用起来非常方便,其基本结构是底层实现的zval,PHP7采用了全新的zval,由此带来了非常大的性能提升,本文重点分析PHP7的zval的改变。 PHP5时代的ZVAL zvalue_value 是联合体...

osc_cw9m1qtk
2019/09/01
1
0

没有更多内容

加载失败,请刷新页面

加载更多

VB语言基础重要知识点12

我们课程,我们做一些针对于考试的简要讲解。 一、有关考试的几个问题 首先,提问:考试最重要的是什么? 答案其实很简单:得分!!!!! 想要得分,就要做到基本的保存。 保存哪些文件呢?...

刘金玉编程
2019/10/30
3
0
全网最全JAVA、Python电子书!限时领取,过时不候!

给大家整理了最全的入门+进阶书籍!!! 免费领取,无套路! 加微信发送“电子书” 秒通过,秒发资源! 本文分享自微信公众号 - Python进击者(JAVAandPythonJun)。 如有侵权,请联系 supp...

kuls
01/16
18
0
原创356--免费还是付费

最近得有一个星期,被一个录屏软件(record it)烦到了,本来免费版可以无限制录制,只能720p,GIF不支持,高清不支持,没有剪辑功能。 之前调研了好几种,用起来还是这个方便,就一直用了。...

八音弦
04/24
14
0
数字IC技术讨论群,设计和验证、前端和后端,总有你感兴趣的话题。快满了,需要的抓紧加入。

本文分享自微信公众号 - 白山头讲IC(gray_mount)。 如有侵权,请联系 support@oschina.cn 删除。 本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。...

白山头
04/29
5
0
how to install mongodb in centos7

[root@xtwj88 ~]# cat /etc/yum.repos.d/mongodb-org-4.2.repo [mongodb-org-4.2]name=MongoDB Repositorybaseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.2/x86......

qwfys
34分钟前
13
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部