php常量:用于数据计算固定的值;并且常量类型只能是标量类型;
注意:
1.常量名前不能有$,一般常量名总是大写;
2.常量有多个单词时由下划线连接;
类常量只能用const定义;常量不受作用域的限制;常量创建时必须初始化;
语法:可以用define()函数来定义常量,并且,一个常量一旦被定义,在程序执行过程中就不能再改变或取消定义;
实例演示:
<?phpconst APP_PATH='/phpstudy_pro';// define(常量名,常量值)define('RUNTIME_PATH','/1118');echo APP_PATH;echo "<hr/>";// constant()函数返回一个常量的值echo constant('RUNTIME_PATH'); // 输出/1118echo "<hr/>";$num='APP_PATH';echo $num;echo constant($num);echo "<hr/>";// 获取查看系统所有的常量// get_defined_constants();// 常量不受作用域的限制function getName(){return APP_PATH;}echo getName();?>
<?phpecho "php版本号:".PHP_VERSION."<br/>";echo "phpz操作系统:".PHP_OS_FAMILY."<br/>";echo "php环境变量里的目录列表的分隔符".PATH_SEPARATOR."<br/>";echo "目录分隔符".DIRECTORY_SEPARATOR."<br/>";echo "最大整数".PHP_INT_MAX."<br/>";echo "最大浮点数".PHP_FLOAT_MAX."<br/>";?>
PHP魔术常量根据常量位置的变化而变化;
| 名称 | 说明 |
|---|---|
__LINE__ |
文件中的当行行号 |
__FILE__ |
文件的完整路径和文件名,如果用在被包含文件中,则返回被包含的文件名 |
__DIR__ |
文件所在的目录 |
__FUNCTION__ |
返回函数名称 |
__CLASS__ |
当前类的名称 |
__METHOD__ |
类的方法名 |
__NAMESPACE__ |
当前命名空间的名称 |
__TRAIT__ |
当前Trait名称 |
常量是全局成员,则会有命名冲突的问题,引入命名空间,命名空间解决全局成员,命名冲突的问题;需要注意,命名空间前不能有任何输出,需要放在脚本首行;
实例演示:
<?phpnamespace a{const APP_PATH="/phpstudy_pro/WWW";}namespace b{const APP_PATH="/phpstudy_pro/COM";}namespace{echo \a\APP_PATH."<br/>";echo \b\APP_PATH."<br/>";}?>
php过滤器用于验证和过滤来自非安全来源的数据,比如用户的输入;
filter_var():过滤一个变量filter_var(var,filter,options);返回值,返回过滤后的值,否则返回false;
filter_var_array()过滤多个变量;filter_var_array(array $data,filter);
实例演示:
<?php$age=22;$min=18;$max=55;$option=array("options"=>array("min_rag"=>$min,"max_rag"=>$max));$age=filter_var($age,257,$option);var_dump($age);if(!$age){echo "年龄不符合申请";}else{echo "年龄符合要求";}// filter_var_array()获取多个变量并过滤$a=1;$b=2;$ab=[$a,$b];var_dump(filter_var_array($ab,FILTER_VALIDATE_INT));?>
通过http get/post请求发送的数据,过滤表单数据;
filter_input();filter_input(输入post/get,变量名,filter);
filter_input_array();filter_input_array(输入post/get,args规定了过滤器参数数组,键是变量名,值是过滤器)
实例演示:
<?php$args = ["username" => FILTER_SANITIZE_STRING,"age" =>FILTER_VALIDATE_INT,"blog_url" =>FILTER_VALIDATE_URL,"ip"=>FILTER_VALIDATE_IP];echo '<hr>';$options = ["options"=>["min_range"=>1]];var_dump(filter_input(INPUT_GET,'id',FILTER_VALIDATE_INT,$options));?>
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号