局部变量|学习笔记

简介: 快速学习局部变量

开发者学堂课程【PHP 基础入门课程(下)局部变量】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/710/detail/12632


局部变量


内容介绍:

一、作用域

二、局部作用域(局部变量)

三、小结


一、作用域

目标:了解 PHP 作用域的概念以及 PHP 中的作用域的类型,掌握作用域的限制和破解关系。

作用域:即作用范围,指变量能够被访问的范围。可分为:

1、局部作用域包含局部变量

2、全局作用域包含全局变量

3、超全局作用域包含超全局变量

4、跨境访问


二、局部作用域(局部变量)

1、概念:

局部作用域:某个函数内部(函数体)的作用域

(1)局部变量:在函数内部定义的变量(形参)

(2)局部变量只能在当前函数内部被访问

(3)形参只能在局部作用域使用

2、示例

局部作用域在局部空间里定义局部变量,这个局部变量就属于局部作用域,比如有一个函数,在函数内部定义了一个变量,那么这个变量就属于局部变量,而局部变量只能在自定义的函数内部使用,其他地方都不能使用。

(1)局部作用域定义局部变量

<?php

#局部作用域

function display1(){//定义一个函数

#函数内部定义的变量都是局部变量

$a *=_FUNCTION_;// 此时把这个作为局部变量,在内部使用是没有问题的。

echo $a;

}

display1(); #函数在此开始执行,也是在此执行结束(释放函数内部所占用的内存)不报错

image.png

echo $a; //在内部之外访问的话不能运行,没有定义。  报错

image.png

(2)形参属于局部作用域

function display2($a = 2){

echo $a;

}

display2();   //输出

echo $a;//报错 未定义变量

image.png


三、小结

1、局部作用域就是函数内部。

2、局部作用域里定义的变量是局部变量。

3、局部变量只能在对应的局部作用域访问,其他地方不可访问。比如函数外部和其他函数内部。

4、形参只能在局部作用域中使用(属于局部变量)

5、扩展:形参引用传值,本质是外部变量与局部变量指向同一个内存地址,在外部访问的是外部变量。

因为比如在(‘$a * 2)加了一个引号,相当于外部给传了一个变量,然后就去取得变量的内存地址,所以在里面的操作对外部有所影响,本质并不是说变成了全局变量,而只是修改与外部相通的意思。

相关文章
|
22天前
|
存储 C语言
C语言:普通局部变量、普通全局变量、静态局部变量、静态全局变量的区别
C语言中,普通局部变量在函数内部定义,作用域仅限于该函数;普通全局变量在所有函数外部定义,作用域为整个文件;静态局部变量在函数内部定义但生命周期为整个程序运行期;静态全局变量在所有函数外部定义,但仅在定义它的文件内可见。
36 10
|
24天前
|
编译器 开发者
什么是局部变量
【10月更文挑战第12天】什么是局部变量
35 1
|
1月前
|
CDN
局部变量
【10月更文挑战第3天】局部变量。
18 3
|
3月前
|
存储
全局变量和局部变量在堆和栈的区别
全局变量和局部变量在堆和栈的区别
357 0
Thymelead th:with 局部变量
Thymelead th:with 局部变量
122 0
|
C++
39.【C/C++ 全局变量和局部变量 (详解)】
39.【C/C++ 全局变量和局部变量 (详解)】
82 0
|
存储
全局变量和局部变量
全局变量和局部变量
75 0
|
PHP 开发者
全局变量|学习笔记
快速学习全局变量
全局变量|学习笔记
|
C++
【C++】局部变量和全局变量
有关C++局部变量和全局变量的记录
130 0
【C++】局部变量和全局变量
|
开发者 Python
全局变量和局部变量 | 学习笔记
快速学习 全局变量和局部变量
125 0