zoukankan      html  css  js  c++  java
  • php变量那些事:学习过程中遇到的关于php变量的有趣的问题(不断发现不断更新)

    不断发现……,不断更新……,不断寻找答案……
    例子的测试环境:php5.3,win7,64位
    Num1:
    <?
    $a=array(1,2,3,4,5,6);
    $b=$a;
    $m=memory_get_usage();
    unset($b[1],$b[2]);
    $mm=memory_get_usage();
    echo $mm-$m;   #####392
    ?>
    <?
    $a=array(1,2,3,4,5,6);
    $b=array(1,2,3,4,5,6);
    $m=memory_get_usage();
    unset($b[1],$b[2]);
    $mm=memory_get_usage();
    echo $mm-$m;   #####-80
    ?>
    上边那个,unset释放内存后,php使用内存量不但没有减少,而且还反而增加了。下边的是正常的。为什么?"变量的分离 copy on write" 。以后说……
    Num2:
    <?
    $a=1;
    $b=&$a;
    unset($b);
    echo $a; ######1
    ?>
    unset到底做了啥啊,php中引用到底什么个情况。以后说……
    Num3:
    <?
    $a = 1;
    function test(){
        unset($GLOBALS['a']);
    }
    test();
    echo $a;########PHP Notice:  Undefined variable: a
    ?>
    <?
    $a = 1;
    function test(){
    global $a;
    unset($a);
    }
    test();
    echo $a;#####1
    ?>
    一个抱notice变量找不到,一个正常输出。$GLOBALS和global有啥区别(曾经看到过腾讯一个面试题)。以后说……(global $var相当于&$GLOBALS['var'],这个问题追加到Num2)

  • 相关阅读:
    php curl getinfo
    php 实现树形结构
    E时代主机,其实做一个小虚拟主机还是不错的
    php 生成验证码
    php curl
    nodejs 操作mysql
    php ++a和a++
    nodejs上传图片并显示的例子
    json
    Rock,Paper,Scissors 水NOJ 1090
  • 原文地址:https://www.cnblogs.com/tdkj/p/3440139.html
Copyright © 2011-2022 走看看