博客列表 >了解变量作用域、常量的定义、访问、空间命名以及变量过滤器

了解变量作用域、常量的定义、访问、空间命名以及变量过滤器

肖傲的博客
肖傲的博客原创
2020年07月06日 16:28:11723浏览

1.变量的作用域

变量的作用域是变量的一个作用范围,在这个范围内变量为可见的,即可以访问该变量的代码区域, 相反,如果不在这个范围内,变量是不可见的,无法被调用。

1.1 全局作用域:写到了函数的外部的变量

$siteName = ‘php中文网’

1.2 函数作用域

在php中,函数会创建出一个独立的作用域,不能直接访问外部的变量

在函数中创建的变量是私有变量,是可以访问的

如果想访问函数的外部的变量可以用以下方式:

  • 使用global关键字,global是将全局作用域的变量的地址,进行复制,然后在局部作用域内新建一个同名的变量名,将外部的地址赋值给局部变量。
  • 可以使用$GLOBALS超全局变量来访问
    超全局变量,不受作用域限制,可以在函数中直接访问

2.php常量

2.1常量的设置和访问

如需设置常量,使用两种方式

  • 关键字const
    在类定义的外部定义常量
    例如: const WEB_PATH = ‘/wwroot/xxx.com’
  • define()函数
  1. 首个参数定义常量的名称
  2. 第二个参数定义常量的值
  3. 可选的第三个参数规定常量名是否对大小写不敏感。默认是 false。
    例如:define(‘WEB_NAME’,’php中文网’)

如果想访问自定义常量可以通过print_r(get_defined_constants(true)[‘user’])来查询

如果想访问常量的值可以通过函数constant()来查询

注意:

  • 常量一旦定义就无法删除或取消
  • 常量必须初始化
  • 常量名称前面没有$符号(常量推荐全部大写,多个单词直接下划线连接)
  • 常量可以不受变量的作用域限制而在任何地方定义和访问
2.2常量的命名空间

全局成员有:常量,类,函数,接口,命名空间解决了全局成员的命名冲突问题。

3.变量的过滤器

PHP 过滤器用于验证和过滤来自非安全来源的数据。
验证和过滤用户输入或自定义数据是任何 Web 应用程序的重要组成部分。

下面简单介绍一些常用过滤器:

  1. filter_var(),通过一个指定的过滤器来过滤单一的变量

  2. filter_var_array(),通过相同的或不同的过滤器来过滤多个变量

  3. filter_input(),获取一个输入变量,并对它进行过滤

  4. filter_input_array() ,获取多个输入变量,并通过相同的或不同的过滤器对它们进行过滤

  5. filter_has_var(),检测是否存在某个外部变量

总结:写PHP代码是需要注意作用域的问题,学习常量从了解常量的定义、访问和命名空间开始。过滤器可以验证用户或者其他程序的数据,保证应用程序的安全性。

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议