PHP的变量的范围

局部变量: 在函数中声明的变量就是局部变量,只能在自己的函数内部使用。

全局变量:

在函数外声明,在变量声明以后的,直到整个脚本结束前都可以使用,包括在函数中和{}中都可使用

PHP的变量分不出 是声明还是使用,

($name

不管是声明还是使用都是一种形式,所以函数中要使用外部的变量就要使用global来确定函数中是使用外部的全局变量,而不是声明。

php 常量默认就是全局的,常量只能定义一次,而且不可以改变。

而javascript 声明变量使用关键字 var name= 'hyr';

如果在函数中不声明 就直接用全局的)

-------------------------------------------------------------------------------------------------

不使用global关键词 ,函数内 $a 是局部变量 ,全局的$a = 10

;不会改变

$a = 10;

function test()

{

$a =

20;

echo

$a;

}

test();// 局部变量 20

echo

"
"; echo $a;//全局变量 10

?>

函数内 使用 global关键字 声明$a 就是外部全局的$a 变量 ,

函数内global关键字声明的同时不能同时赋值

$a = 10;

function test()

{

global

$a;//声明$a是外部的全局变量$a的同时不能赋值,赋值可以另外起一行赋值,如下行

$a

= 20;//声明函数里使用的 $a 变量是来自 函数外部 声明的全局变量$a

echo

$a;

}

test();// 结果为

20

echo

"
";

echo $a;// 结果也是 20

?>

在PHP中使用全局变量

要通过global关键字将这个全局变量包括到函数中才能使用到,在global声明之后才是使用全局的变量

参数就是局部变量,这个局部变量可以调用 时去赋值。

PHP的静态变量

静态变量只能声明在函数中(类中),不能在全局声明

使用static在变量前;

作用:一个变量可以在同一个函数在多次调用中同用。

1. 静态变量在静态代码段中保存

2. 一个函数多次调用之间共用,但只在第一次调用 函数时声明到内存,以后再调用用,就不再声明,而直接使用

变量函数:如果一个变量后面有括号$var=hello $var(), 就将寻找与变量值同名的函数 hello();

1. 函数的功能————决定是否使用这个函数

2. 函数的参数————决定函数怎么调用 —有几个参,传什么类型的值,。。。。

3. 函数的返回值———-调用后怎么处理这个函数

PHP给2000多个函数。。。 都属于系统涵数,都可以通过名称直接使用。

一定要先使用系统函数,如果系统函数没有你想要的功能,再去自己定义函数

1. 常规函数

bool copy ( string source, string dest )

2. 带有mixed , mixed表示可以传任何类型的数据

bool chown ( string filename, mixed user )

3. 带有&参数的函数, 表示引用赋值,

这个参数不能传值,只能传一个变量,然后函数将变量的值改变,我们在使用这个变量时,值也是变化的

bool arsort ( array &array [, int sort_flags]

)

4.默认函数 带有[]的函数, 表示这个参数是可选的,如果你传值了就使用你传的值,如果没有传值则使用默认值

直接在声明函数时,就为参数给初值。

可选值和必须值, 必须从后向前设置

bool arsort ( array &array [, int sort_flags]

)

5. 带有…的参数函数, …表示可以传任意多个参数

int array_unshift ( array &array, mixed var [,

mixed ...] )

6. 回调函数 带有callback, 就是调用这个函数时需要我们传一个函数进来(函数名,函数名字串)

array array_filter ( array input [, callback callback] )

内部函数:

PHP可以在函数内部再声明函数

就是用来帮助外部函数完成一些子功能的。

递归函数:

就是在自己内部调用自己的函数名

重用函数(使用自己定义的函数库)

php 函数 变量,PHP函数中变量的说明相关推荐

  1. python输出变量代码_Python中变量的输入输出实例代码详解

    1.变量的输入: input函数: input() input("请输入银行卡密码") password = input("请输入银行卡密码") 变量名 = i ...

  2. php mysql变量赋值给变量_MySQL_mysql 存储过程中变量的定义与赋值操作,一、变量的定义 mysql中变量定 - phpStudy...

    mysql 存储过程中变量的定义与赋值操作 一.变量的定义mysql中变量定义用declare来定义一局部变量,该变量的使用范围只能在begin...end 块中使用,变量必须定义在复合语句的开头,并 ...

  3. php声明js变量类型,js中变量是什么以及有哪些类型

    在js中,变量是存储信息的容器:JavaScript中有两种类型的变量:局部变量和全局变量. js如何声明变量? 在js中,可以使用关键词"var"或者"let" ...

  4. mysql sql语句中变量_mysql-sql语句中变量的使用

    最近工作中用到mysql,发现mysql和Oracle差别挺大的,其不像Oracle中存在丰富的分析函数(开窗函数),如rank(),lag(),leaf()等,只能用变量来获取以便达到分析函数的效果 ...

  5. 如何理解c语言的变量,C语言中变量的理解.PDF

    C语言中变量的理解 年第 期 建建 电电 脑脑 2011 3 59 C 语言中变量的理解 潘 莉 河南经贸职业学院 东校区 河南郑州 ( 冤 450009 ) 摘 要 在很多 级语言的基础语法中都有变 ...

  6. js变量和java变量相等,js中变量和jsp中java代码中变量互相访问解决方案

    1.js变量获取jsp页面中java代码的变量值. 方法:var JS变量名 = 我们常常会将js文件和jsp文件分开写,在js文件中,上面的方法似乎不管用了. 也可以通过变通的方法来解决: a.js ...

  7. char型变量声明java_java中变量的声明和变量的类型

    1.变量的概念: 内存中的一个存储区域该区域有自己的名称(变量名)和类型(数据类型)Java中每个变量必须先声明,后使用该区域的数据可以在同一类型范围内不断变化 使用变量注意: 变量的作用域:一对{ ...

  8. java val变量声明_Kotlin中变量不同于Java: var 对val(KAD 02)

    原文标题:Variables in Kotlin, differences with Java. var vs val (KAD 02) 时间:Nov 28, 2016 原文链接:http://ant ...

  9. 关于python语言的变量随时_Python中变量的类型是动态的,随时可以变化

    Python中变量的类型是动态的,随时可以变化 答:√ 下列关于普通用户实现任务计划的描述,错误的是:(? ?) 答:普通用户可通过修改/etc/crontab文件制定任务计划 下列哪些属于人民战争的 ...

  10. java 静态变量命名_java中变量的命名规范是什么?

    java中变量的命名规范是什么? 发布时间:2020-05-21 23:12:19 来源:亿速云 阅读:206 作者:鸽子 Java是一种区分字母的大小写的语言,所以我们在定义变量名的时候应该注意区分 ...

最新文章

  1. 加拿大两院院士裴健:搜索皆智能​,智能皆搜索
  2. vs2010启动调试、停止调试非常慢
  3. ALV中动态内表+行转化为列
  4. 我用 Python 3分钟实现9种经典排序算法的可视化
  5. 个人计算机的缩写英语,计算机中常用的英语缩写
  6. python面试题之有没有一个工具可以帮助查找python的bug和进行静态的代码分析?
  7. Opencv中的图像深、浅拷贝
  8. I2S,PCM,IOM-2,I2C,SPI,UART,GPIO
  9. 【读书笔记】商业自传-PayPal程序员-硅谷钢铁侠-埃隆·马斯克,SpaceX CEO、特斯拉公司CEO、太阳城公司董事会主席。
  10. 机器学习基石-林轩田-第一周笔记
  11. Java进销存管理系统
  12. 什么是边缘计算网关?(边缘计算网关产品的特点?)
  13. PS教程 | 美女面部剥落碎片效果
  14. Boost:宏BOOST_LOG_TRIVIAL的测试
  15. 领英linkedin使用手册—领英邮件类型,管理运用的方式方法
  16. AliOS Things的启动过程分析(一)
  17. win系统加入方舟服务器秒退,win10方舟生存进化进服务器闪退解决方法
  18. dataV 自定义组件开发(个人信息展示 自动轮播)
  19. 玩一玩Spring容器(可视化笔记02)
  20. python机器学习快速入门

热门文章

  1. CRISP-DM (cross-industry standard process for data mining)跨行业数据挖掘过程标准
  2. 鸿蒙和安卓实际体验,鸿蒙2.0,你收到推送了么?告诉你实际体验!
  3. 树莓派开发6-配置树莓派的Linux内核
  4. The FBX plug-in does not support objects set to By Object mode in the Object Properties Display
  5. 二十八、动态分区分配算法
  6. 图像去噪--Noise2Noise: Learning Image Restoration without Clean Data
  7. PAT甲级(Advanced Level)真题-- 1062 To Buy or Not to Buy
  8. IDEA多行缩进快捷键
  9. mysql时间戳group by操作,mysql使用FROM_UNIXTIME将时间戳按日期group by
  10. SPI(服务发现机制)