Blogger Information
Blog 21
fans 0
comment 0
visits 21524
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
常量的知识点总结,并且实例演示过滤器的使用
N.
Original
835 people have browsed it

常量的知识点总结:

php常量 :用于数据计算固定的值,常量类型只能是标量类型 boolean int float string;

  • 常量名前不能有$ 一般常量名总是大写 .
  • 多个单词由下划线连接 .
  • 常量必须初始化,常量也不受作用域的限制
  • 类常量之能用const定义 常量也不能取消定义或者重新定义

代码如下:

  1. // 第一种声明一个常量的方法
  2. const CE_SHI = "第一种声明常量的方法;";
  3. // 输出看一下
  4. echo CE_SHI,"输出出来了";
  5. echo "<hr>";
  6. // 第二种声明常量的方法
  7. // define(字符串常量名,常量值)
  8. define("CE","第二种声明的方法;使用的是define(字符串常量名,常量值) ");
  9. echo CE,"输出出来了";
  10. echo "<hr>";
  11. // 还可以使用 constant("常量名")来访问常量
  12. // 有返回值,需要配合echo
  13. const AA = "可以使用constant()来访问常量,有返回值,需要配合echo打印出来";
  14. echo constant("AA");
  15. // 当常量的名称在变量里定义时 就可以用这个
  16. // 例如
  17. const BB = "当常量的名称在变量里定义时 就可以用constant(常量名)来访问常量";
  18. $name="BB";
  19. echo "<BR>";
  20. echo constant("BB"),"同样显示出来了";
  21. // 类常量之能用const定义 常量也不能取消定义或者重新定义
  22. // 常量必须初始化,常量也不受作用域的限制
  23. // 创建一个类
  24. class xue{
  25. const XI = "PHP";
  26. }
  27. echo "<hr>";
  28. const AAA = "函数";
  29. function xi(){
  30. return AAA;
  31. }
  32. echo xi();

效果图


常量是全局成员,最大的问题是命名冲突,引入命名空间 针对的是全局成员

  • 全局空间内的成员不允许重复定义
  • 全局成员:常量,函数,类[接口]
  • 命名空间 namespace+空间名称+{}
  • 命名空间解决全局成员 命名冲突的问题

代码如下

  1. namespace yyy{
  2. const AAA = "这是第一个空间里的常量值";
  3. echo AAA;
  4. // 加个换行横线
  5. echo"<hr>";
  6. }
  7. namespace uuu{
  8. const AAA = "这是第二个空间里的常量值";
  9. echo AAA,".....这个是打印出第二个空间里的常量";
  10. // 访问第一个空间的AAA常量,程序时由上往下执行的
  11. // 所以第一个访问不了下面的空间
  12. echo "<br>";
  13. echo \yyy\AAA,"....现在这个是在第二个空间里打印的第一个空间的常量";
  14. }
  15. // 可以引入全局空间 也叫匿名空间
  16. namespace{
  17. echo"<hr>";
  18. echo \yyy\AAA,"...这是匿名空间打印的第一个空间的常量";
  19. echo"<hr>";
  20. echo\uuu\AAA,"...这是匿名空间打印的第二个空间常量 ";
  21. }

效果图:


过滤器的使用

  • 过滤器函数 filter_var(),过滤单个变量
  • filter_var(变量,过滤器函数,options(额外的过滤规则)); 返回值: 返回过滤后的值,否则返回false
  • 设置过滤器的第三个值的参数,min_range和 max_range分别是最小值和最大值的意思

上代码

  1. // 声明一个变量
  2. $a = "1117";
  3. // 使用过滤器把数字过滤出来 过滤器id是257
  4. // 设置过滤器的第三个值的参数,min_range和 max_range分别是最小值和最大值的意思
  5. $min = 1110;
  6. $max = 1115;
  7. $c = array("options"=>array("min_range"=>$min,"max_range"=>$max));
  8. $b = filter_var($a,257,$c);
  9. // 然后使用var_dump打印出来 也可以使用echo
  10. var_dump($b);
  11. // 做一个判断
  12. if($b){
  13. echo"数字符合区间";
  14. }else{
  15. echo"不符合数字区间";
  16. }

图在这:


  • filter_var_array()过滤多个变量

代码:

  1. // 过滤多个变量
  2. $v = 10;
  3. $h = 11;
  4. $j = [$v,$h];
  5. var_dump(filter_var_array($j,257));

效果图


  • 验证多个外部变量 filter_input_array(输入类型get/post,变量数组规定了过滤器参数数组,键是变量名,值是过滤器) .
  • 过滤外部变量:通过http get/post请求发送过来数据,过滤表单数据 .
  • 使用get参数来演示外部变量的获取与过滤 .
  • 先创建一个变量数组,用来设置需要过滤对应信息,然后再把这个数组引入进去 .

代码在这:

  1. echo "<HR>";
  2. $aaaa = [ "user"=> FILTER_SANITIZE_STRING,
  3. "age"=> FILTER_VALIDATE_INT,
  4. "ip"=>FILTER_VALIDATE_IP,
  5. "url"=>FILTER_VALIDATE_URL,];
  6. // 打印出来 并且设置输入方式 然后引入刚才输入的数组,就可以过滤想要过滤的信息了
  7. var_dump(filter_input_array(INPUT_GET,$aaaa));
  8. echo "<HR>";

图在这:


  • 使用filter_input(输入方式,变量名,对应过滤器的名称或者函数的id)过滤单个变量 .
  • 可以设置过滤规则
  1. 规则:
  2. $guize = ["options"=>["min_range"=>1]];
  3. 过滤:
  4. var_dump(filter_input(INPUT_GET,"id",257,$guize));

图在这:

设置的规则是需要id大于等于1 当输入零时如下图:

Correcting teacher:灭绝师太灭绝师太

Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
1 comments
灭绝师太 2020-11-20 13:34:56
哇~作业写的很详细,有些函数的参数记不住也没关系,但要知道有~ 记不住查一下手册就好了~
1 floor
Author's latest blog post