php - 关于全局变量和局部变量的问题

查看:56
本文介绍了php - 关于全局变量和局部变量的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

<?php
$var = "content1";
function fn()
{
    echo "inside the function, \$var = " . $var . "<br/>";
    $var = "content2";
    echo "inside the function, \$var = " . $var . "<br/>"; 
}   
fn();
echo $var;
?>

这边有个疑问, 上面最开始一行 定义了 $var 那在函数的第一句 echo 中 为什么无法输出$var="content1" 的结果?

还有一个问题

<?php
$var = "content1";
function fn()
{
    $var ="helloWorld";
    global $var;
    echo "inside the function, \$var = " . $var . "<br/>";

}

fn();

echo $var;
?>

这边我开始定义了一个全局变量 $var ,然后在函数内部定义了一个 $var ,当使用global 函数的时候 ,为什么函数内部的echo输出的是 开始第一次定义的$var = "content1"; ,而不是$var ="helloWorld"; ?

解决方案

首先global不是函数而是关键字

  1. php的全局函数,只有用global关键字声明后,在函数内部才能访问。

  2. 用global声明全局变量,如果存在同名的局部变量,局部变量会被覆盖掉

这篇关于php - 关于全局变量和局部变量的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆