所有分类
  • 所有分类
  • 后端开发
PHP变量作用域大揭秘,全局VS局部VS类范围,写代码更从容

PHP变量作用域大揭秘,全局VS局部VS类范围,写代码更从容

php中的变量作用域分为局部(函数内)、全局(程序内可访问)、类范围(类实例内可访问)。global关键字可将局部变量声明为全局变量,static关键字可将局部变量声明为静态变量,在函数调用间保留其值。中,变量的作用域是指在代码的哪些部分可

哈喽小伙伴们,PHP里的变量虽重要,可你们知道它们是怎么被看见和修改的吗?那就得了解下PHP的变量作用域。搞懂它,咱们写PHP代码时就能更安心,也更好维护!

1.全局作用域

PHP变量作用域大揭秘,全局VS局部VS类范围,写代码更从容

只要在你的那个整件事情里面查看着改,就能搞定。说白了,假如你在PHP编程时在函数外头创了个变量,那它就成为了那种全球通用的变量了。所以,不管是你自己自闭症似的函数里边,还是别人坑爹般的类方法里,随便怎么搞都没问题

2.局部作用域

局部区域就是特意限制范围的变量。比如PHP这个编程语言里,你在函数里面设置的变量就在这范围内有效,结束后就消失再也看不见了。

3.类范围作用域

类里的事儿当然还得用类来处理哇~换PHP来讲,就是给变量弄个类属性就能搞定了。这样做,每次创建类的新实例时都能用到这个属性,可惜外部的友们是察觉不到的

4.global关键字

说真的,在PHP编程里,加上“global”这个词就可以直接在函数里使用外面的变量,这样也省得费劲传参数了。可是这种做法虽然简单,但代码头也容易变得乱七八糟的,甚至还可能出粘贴错误呢~

5.static关键字

<pre class='brush:php;toolbar:false;’>// 全局变量
$global_var = 10;
function test() {
// 局部变量
$local_var = 5;
// 使用全局变量,需要使用 global 关键字
global $global_var;
// 使用静态变量
static $static_var = 0;

$static_var++;

// 输出变量值
echo “局部变量:$local_var
“;
echo “全局变量:$global_var
“;
echo “静态变量:$static_var
“;
}
test(); // 输出: 局部变量:5
全局变量:10
静态变量:1
test(); // 输出: 局部变量:5
全局变量:10
静态变量:2

“static”这玩意儿在我们平时说的“美白整形”里的意思就是指静态变量。虽然这货只能用在函数里面,但你只要用它一次它的值就不会不见了!下次再用时它还记得上次的数据,挺实用的?这样大家都能用到同样的东西,挺省心的不是吗?

6.实战案例

来,假设有个我们造的购物车,可以帮忙放东西。它内部还有个叫$items的神器,不能没有这个购物车对象,否则无法查看或修改它,这样就能保护好买的物品,也让代码更安全好用。

编程时,处理数据传输真是让人头疼。不过别怕,PHP这儿可是藏了好多好用的绝活儿,比如参数传过去,还有全局变量和静态变量这些,各种用法随便你选,保证让你的代码更容易理解,用着也舒服。

7.作用域规则的影响

学过PHP的作用域规则以后,写代码就不怕出错。这样思路也能更清楚一些。比如局部变量、全局变量和静态变量可以混着用,简洁明了还不易出错,多好!

8.变量作用域与代码可读性

让你的代码看起来顺眼些!看清变量的作用域,代码理解起来更容易,也能减少犯错的可能。特别是在大型项目中,这一步可不能忽视,能帮团队提高协作效率,推进项目进展!

class Cart {
    private $items = [];
    public function addItem($item) {
        $this->items[] = $item;
    }
    public function getItems() {
        return $this->items;
    }
}
// 创建购物车实例
$cart = new Cart;
// 添加商品
$cart->addItem('商品 1');
$cart->addItem('商品 2');
// 获取购物车中的商品
$items = $cart->getItems();
// 输出购物车中商品, 使用循环遍历或打印数组
foreach ($items as $item) {
    echo $item . '
'; }

9.总结

去学习PHP,尤其是搞懂变量的作用域超实用。PHP里头作用域就三种:全局、局部和类。记得经常用到global和static这俩词儿。做好这个,代码看起来好明白多了,以后修修改改啥都方便,防止出现疯子般的错误和牛头不对马嘴的逻辑哟~

做项目的时候,变量范围设置要注意方法!别乱用global跟static这些关键词,它们会让代码更易于理解和出错率降低。想当PHP大神?多学、多练就是了,特别是PHP变量作用域这块儿。掌握好的话,项目就能飞起来,后期维护也省事儿!

学习PHP时,你是不是也曾被变量作用域弄得晕头转向?赶紧别害羞,到评论区和大伙儿分享!

原文链接:https://www.icz.com/technicalinformation/web/2024/04/15885.html,转载请注明出处~~~
0

评论0

请先
注意:请收藏好网址www.icz.com,防止失联!站内免费资源持续上传中…!赞助我们
显示验证码
没有账号?注册  忘记密码?