php基础:函数、变量作用域

1.函数

分为内置函数和自定义函数,用户定义的函数声明以单词 "function" 开头

此外:

函数名能够以字母或下划线开头(而非数字)。

函数名对大小写不敏感。

函数名应该能够反映函数所执行的任务

php 复制代码
<?php
function helloWorld(){
    echo "Hello World!";
}
helloWorld();

function getname($name){//带参数的函数
    return $name;
}
echo getname('liming');

$a=function () {//匿名函数,一般赋值给一个形参
    return 'liming2';
};
echo $a();

?>

回调函数

指调用函数的时候将另一个函数作为参数传递到调用的函数中,而不是传递一个普通的变量作为参数,使用回调函数是为了可以将一段自己定义的功能传到函数内部使用。

php 复制代码
//回调函数
function getname2($name)
{
return $name;
}
echo call_user_func('getname2','liming123');

2.变量作用域

在 PHP 中,可以在脚本的任意位置对变量进行声明。

变量的作用域指的是变量能够被引用/使用的那部分脚本。

PHP 有三种不同的变量作用域:

local(局部)

global(全局)

static(静态)

Local 和 Global 作用域

函数之外声明的变量拥有 Global 作用域,只能在函数以外进行访问。

函数内部声明的变量拥有 LOCAL 作用域,只能在函数内部进行访问。

global 关键词用于在函数内访问全局变量。

要做到这一点,请在(函数内部)变量前面使用 global 关键词:

php 复制代码
$x=5;
$y=10;

function myTest() {
    global $x,$y;
    $y=$x+$y;
}

myTest();
echo $y; // 输出 15

PHP 同时在名为 $GLOBALS[index] 的数组中存储了所有的全局变量。下标存有变量名。这个数组在函数内也可以访问,并能够用于直接更新全局变量

php 复制代码
$y=10;

function myTest() {
   echo $GLOBALS['y'];
}

myTest();

当函数完成/执行后,会删除所有变量。需要不删除某个局部变量,使用 static 关键词.

php 复制代码
function myTest()
{
    static $x = 0;
    echo $x;
    $x++;
}
myTest();
myTest();
myTest();

//<!--然后,每当函数被调用时,这个变量所存储的信息都是函数最后一次被调用时所包含的信息。-->
//<!--该变量仍然是函数的局部变量。-->
?>
相关推荐
梵刹古音1 小时前
【C语言】 字符数组相关库函数
c语言·开发语言·算法
微风中的麦穗7 小时前
【MATLAB】MATLAB R2025a 详细下载安装图文指南:下一代科学计算与工程仿真平台
开发语言·matlab·开发工具·工程仿真·matlab r2025a·matlab r2025·科学计算与工程仿真
2601_949146537 小时前
C语言语音通知API示例代码:基于标准C的语音接口开发与底层调用实践
c语言·开发语言
开源技术8 小时前
Python Pillow 优化,打开和保存速度最快提高14倍
开发语言·python·pillow
学嵌入式的小杨同学8 小时前
从零打造 Linux 终端 MP3 播放器!用 C 语言实现音乐自由
linux·c语言·开发语言·前端·vscode·ci/cd·vim
mftang9 小时前
Python 字符串拼接成字节详解
开发语言·python
jasligea9 小时前
构建个人智能助手
开发语言·python·自然语言处理
kokunka10 小时前
【源码+注释】纯C++小游戏开发之射击小球游戏
开发语言·c++·游戏
汉堡包00110 小时前
【网安基础】--内网代理转发基本流程(正向与反向代理)
安全·web安全·php
云栖梦泽10 小时前
易语言开发从入门到精通:补充篇·网络编程进阶+实用爬虫开发·API集成·代理IP配置·异步请求·防封禁优化
开发语言