Correcting teacher:天蓬老师
Correction status:qualified
Teacher's comments:群中有小白多了, 大家也是从小白过来的
// 全局变量
$myweb='myweb';
function myweb(){
// 1、global
global $myweb;
// 2、使用超全局变量
$myweb=$GLOBALS['myweb'];
return $myweb;
// 函数可以直接访问超全局变量
echo $_SERVER['SERVER_SOFTWARE']. '<br>';
}
echo myweb();
echo $_SERVER['SERVER_SOFTWARE']
?>
<?php
// 静态变量与动态变量
// 函数内,动态变量,变量被多次初始化
function function1(){
$a=2;
$a+=2;
return $a;
}
echo function1().'<br>';
echo function1().'<br>';
echo function1().'<br>';
// 全局变量是静态变量,被初始化一次,初始值只被使用一次
$a=2;
function function2(){
global $a;
$a+=2;
return $a;
}
echo function2().'<br>';
echo function2().'<br>';
echo function2().'<br>';
// static关键字,用于声明静态变量
function function3(){
// 函数内静态变量,即局部静态变量
static $a=3;
$a+=2;
return $a;
}
echo function3().'<br>';
echo function3().'<br>';
echo function3().'<br>';
?>
<?php
// 1. 过滤单个变量filter_var()
// filter_var(variable需过滤的变量, filter所需的过滤器, options过滤要求)
//如果成功,则返回被过滤的数据。如果失败,则返回 FALSE。
$wages=3500;
var_dump(filter_var($wages,FILTER_VALIDATE_INT,["option"=>["min_range>2000"]]));
echo "<br>";
$email="123456789@qq.com";
var_dump(filter_var($email,FILTER_VALIDATE_EMAIL));
echo "<br>";
//2. 过滤多个变量filter_var_array()
// $user=array($name=>"peter",$age=>34,$email=>"peter@qq.com");
// $name
// var_dump(filter_var_array($name))
// 3. 检测是否存在指定的外部变量, filter_has_var()
$user="peter";
var_dump(filter_has_var(INPUT_GET,$user));
// 4. 验证输入的过滤器,filter_input
if(!filter_has_var(INPUT_GET,"user")){
echo"请先注册";
}else{
$user=filter_input(INPUT_GET,"user");
echo $user;
}
// 5. 验证多个外部变量: filter_input_array()
$user=array(
"name"=>FILTER_SANITIZE_STRING,
"age"=>FILTER_VALIDATE_INT,["options"=>["min_range>18","max_range<50"]],
"email"=>FILTER_VALIDATE_EMAIL
);
var_dump(filter_input_array(INPUT_GET,$user));
// 常量是不需要更新的数据
// 查看当前系统中的常量
// print_r(get_defined_constants());
// 分组查看
// print_r(get_defined_constants(true));
// 魔术常量__DIR__,指向当前执行的PHP脚本所在的目录
echo __DIR__ .'<br>';
// 定义常量 当前执行脚本的路径
define('APP_PATH', __DIR__ . '\1.php');
echo APP_PATH.'<br>';
// 查看用户自己定义的常量
print_r(get_defined_constants(true)['user']);
?>
<?PHP
// 常量
// define创建函数常量,可以用于流程控制中,constant不能
function myfunction(){
// define(name,value,bool)
define('NAME','peter');
echo NAME;
}
myfunction();
if(!defined('USER')){
define('USER','张三');
echo USER;
}
// 默认值false,大小写敏感
define(NAME,'peter',FALSE);
echo NAME.'<br>';
// define('NAME','jack',TRUE);
// echo constant('name');
// constant创建类常量,define不能
class User{
const NAME='alice';
}
echo User::NAME;
// 常量的值:变量,字符串,数值,布尔,null
?>
<?php
// 魔术常量:系统定义好的常量
echo '当前行号:'.__LINE__.'<br>';
echo '当前目录:'.__DIR__.'<br>';
echo '当前文件:'.__FILE__.'<br>';
// 当前函数名
function myfunction(){
return __FUNCTION__;
}
echo myfunction();
echo '<br>';
// 当前方法
class study{
public function method(){
echo __METHOD__;
}
}
$study=new study;
$study->method();
?>
总结:对于我这个小白来说,全部都很重要,所以都写了一遍,尽管只是比葫芦画葫芦而已。