文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>读书笔记[PHP程序设计]

读书笔记[PHP程序设计]

时间:2008-04-21  来源:liuxingyuyuni


?php   
    $names = array("userOne", "userTwo", "userThr");
    /**
     * @desc 默认情况下,返回的值是复制的,
     * 见鬼的是加上“&”只是个声明,也就说他具备了这个能力,
     * 但并未修改默认规则,在调用方法之前还要加“&”符号
     * 当在函数声明时加上“&”符号,则返回对其返回值的引
     * 用(别名)●前提条件是在实际调用的时候方法前也要加上"&",多讨厌...
     * */
    function & find_one($num) {
        global $names;
        return $names[$num];
    }
    // 返回$names第二个元素的一个引用
    $person =& find_one(1);
    $person = "BianYuan";
    //其值已经改变
    echo "";
    print_r($names);
   
    /**
     * @desc    个人想法:1. 定义一个方法: function & find_one(){}指明了返回的是某个数据的引用
     * [通常会这样理解,我"以为"这个方法默认已经是引用的了]然尔在使用的时候依
     * 然要在方法前加“&”让我觉得很不习惯,也许不只是我自己.我觉得更好的情况
     * 应该是不想让方法引用的时候加某些标记符号,更贴心一些。因为即然程序员定
     * 义这个方法加了“&”之后,应该使用这个功能的地方较多,SO。。。
     *                  
     * 2. 另外我觉得这种操作最好少用,因为针对$names变动可能会发生在许多地方
     * 以后维护起来非常麻烦,因为你可能要找几个地方才可以确定$names在哪几个地
     * 方被修改,如果一定要这样使用的话,最好将修
     * 改$names的几处地方全部封装到到一个方法当中,利于修改[即所谓对可变性的封装]
     *            
     * */
   
?>


相关阅读 更多 +
排行榜 更多 +
西安交大通

西安交大通

生活实用 下载
长江云通

长江云通

生活实用 下载
translatez

translatez

生活实用 下载