博客列表 >php常量,变量过滤器的使用

php常量,变量过滤器的使用

α清尘
α清尘原创
2020年11月20日 16:00:06792浏览

php常量知识,变量过滤器的使用

php常量相关整理

php常量:用于数据计算固定的值;并且常量类型只能是标量类型;
注意:
1.常量名前不能有$,一般常量名总是大写;
2.常量有多个单词时由下划线连接;
类常量只能用const定义;常量不受作用域的限制;常量创建时必须初始化;

语法:可以用define()函数来定义常量,并且,一个常量一旦被定义,在程序执行过程中就不能再改变或取消定义;
实例演示:

  1. <?php
  2. const APP_PATH='/phpstudy_pro';
  3. // define(常量名,常量值)
  4. define('RUNTIME_PATH','/1118');
  5. echo APP_PATH;
  6. echo "<hr/>";
  7. // constant()函数返回一个常量的值
  8. echo constant('RUNTIME_PATH'); // 输出/1118
  9. echo "<hr/>";
  10. $num='APP_PATH';
  11. echo $num;
  12. echo constant($num);
  13. echo "<hr/>";
  14. // 获取查看系统所有的常量
  15. // get_defined_constants();
  16. // 常量不受作用域的限制
  17. function getName(){
  18. return APP_PATH;
  19. }
  20. echo getName();
  21. ?>

预定义常量

  1. <?php
  2. echo "php版本号:".PHP_VERSION."<br/>";
  3. echo "phpz操作系统:".PHP_OS_FAMILY."<br/>";
  4. echo "php环境变量里的目录列表的分隔符".PATH_SEPARATOR."<br/>";
  5. echo "目录分隔符".DIRECTORY_SEPARATOR."<br/>";
  6. echo "最大整数".PHP_INT_MAX."<br/>";
  7. echo "最大浮点数".PHP_FLOAT_MAX."<br/>";
  8. ?>

魔术常量

PHP魔术常量根据常量位置的变化而变化;

名称 说明
__LINE__ 文件中的当行行号
__FILE__ 文件的完整路径和文件名,如果用在被包含文件中,则返回被包含的文件名
__DIR__ 文件所在的目录
__FUNCTION__ 返回函数名称
__CLASS__ 当前类的名称
__METHOD__ 类的方法名
__NAMESPACE__ 当前命名空间的名称
__TRAIT__ 当前Trait名称

命名空间

常量是全局成员,则会有命名冲突的问题,引入命名空间,命名空间解决全局成员,命名冲突的问题;需要注意,命名空间前不能有任何输出,需要放在脚本首行;

实例演示:

  1. <?php
  2. namespace a{
  3. const APP_PATH="/phpstudy_pro/WWW";
  4. }
  5. namespace b{
  6. const APP_PATH="/phpstudy_pro/COM";
  7. }
  8. namespace{
  9. echo \a\APP_PATH."<br/>";
  10. echo \b\APP_PATH."<br/>";
  11. }
  12. ?>

php变量过滤器的使用

什么是过滤器?

php过滤器用于验证和过滤来自非安全来源的数据,比如用户的输入;

过滤器函数

filter_var():过滤一个变量filter_var(var,filter,options);返回值,返回过滤后的值,否则返回false;
filter_var_array()过滤多个变量;filter_var_array(array $data,filter);
实例演示:

  1. <?php
  2. $age=22;
  3. $min=18;
  4. $max=55;
  5. $option=array("options"=>array("min_rag"=>$min,"max_rag"=>$max));
  6. $age=filter_var($age,257,$option);
  7. var_dump($age);
  8. if(!$age){
  9. echo "年龄不符合申请";
  10. }else{
  11. echo "年龄符合要求";
  12. }
  13. // filter_var_array()获取多个变量并过滤
  14. $a=1;
  15. $b=2;
  16. $ab=[$a,$b];
  17. var_dump(filter_var_array($ab,FILTER_VALIDATE_INT));
  18. ?>

过滤外部变量

通过http get/post请求发送的数据,过滤表单数据;

filter_input();filter_input(输入post/get,变量名,filter);
filter_input_array();filter_input_array(输入post/get,args规定了过滤器参数数组,键是变量名,值是过滤器)

实例演示:

  1. <?php
  2. $args = [
  3. "username" => FILTER_SANITIZE_STRING,
  4. "age" =>FILTER_VALIDATE_INT,
  5. "blog_url" =>FILTER_VALIDATE_URL,
  6. "ip"=>FILTER_VALIDATE_IP
  7. ];
  8. echo '<hr>';
  9. $options = ["options"=>["min_range"=>1]];
  10. var_dump(filter_input(INPUT_GET,'id',FILTER_VALIDATE_INT,$options));
  11. ?>
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议