• 技术文章 >后端开发 >php教程

    关于全局global 的有关问题

    2016-06-13 13:28:37原创339
    关于全局global 的问题
    当我访问a.php页面的时候 调用b.php中的一个方法,这个方法是执行采集,需要一段时间才能采集完,

    我在a页面中有个全局的变量 $c=""; b页面中给$c赋值一次,然后供其他方法使用$c。

    如果我再次访问a页面的时候这个$c的值又变为了 初始值空,这个会对b页面中的$c产生影响吗??
    (a页面只执行一次b中的方法,当b的方法执行完 a才回再次触发b页面的方法)



    我写了个小的demo测试,不知道表述的是否准确,希望有人可以给指点下或者明确下:
    PHP code
    //写进日志
    function write_logs($str='') {
    global $num;
    if($num>1){
        $num="ok";
    }
        $fliepath_dir="test.txt";
        $str=$str."-".$num."\r\n";
        if($fp = @fopen($fliepath_dir, 'a')) {
            @flock($fp, 2);
            fwrite($fp, $str);
            fclose($fp);
            return true;
        }else{
            return false;
        }
    }
    $num=0;
    $act=$_GET["act"];
    if($act=="b"){
    $num="2";
    for ($index = 1; $index < 10; $index++) {
    write_logs($index);
    sleep(3);
    }
    }else{
        $num=0;
        echo "no".$num;
    }
    


    访问上面这个文件 传递act=b 的时候 才运行写入$num=2;
    然后 不传递参数就$num=0; 恢复初始值
    然后 在日志里判断 $num是否大于1 即赋值是否成功
    这样写应该能测试 上面我说的那种情况吧?


    ------解决方案--------------------
    可以,验证了
    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:quot num index str act
    上一篇: 一个系统允许同一个帐号最多10个人同时登录在线,如何做呢 下一篇: 最近遇到个比较诡异的有关问题,麻烦大家帮忙看下,有哪里遇到过,多谢
    20期PHP线上班

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• PHP 页面跳转到另一个页面的多种方法方法总结_PHP教程• sourcesafe管理phpproj文件的补充说明(downmoon)_PHP教程• php xml文件操作代码(一)_PHP教程• 继续收藏一些PHP常用函数第1/2页_PHP教程• 懒惰是金 介绍几个php通用的函数第1/2页_PHP教程
    1/1

    PHP中文网