摘要:<?php//1.局部变量:函数内部function demo1(){ $str1 = '我是函数内部变量str1'; return $str1;}//只能在函数中访问echo demo1();//2.全局变量:在函数外部定义(只能在函数外访问)$str2 = '我是函数外部定义的变量str2';functi
<?php
//1.局部变量:函数内部
function demo1(){
$str1 = '我是函数内部变量str1';
return $str1;
}
//只能在函数中访问
echo demo1();
//2.全局变量:在函数外部定义(只能在函数外访问)
$str2 = '我是函数外部定义的变量str2';
function demo2(){
//return $str2 ? $str2:'不可访问';// 报错
}
//echo demo2();
echo $str2;
echo '<hr>';
//3.在函数的参数列表中定义变量
function demo3($str3){
return $str3;
}
echo demo3('123');
echo '<hr>';
function demo4($a1,$a2){
$a1 = func_get_arg(0);//func_get_arg(0)是参数列表中的第一个变量,1是第二个
$a2 = func_get_arg(1);
return $a1.'和'.$a2;
}
echo demo4('我','她');
/* 在函数内访问全局变量的3中方法
1.关键字:global
2.预定义变量:$GLOBALS
3.参数传参数:function($args){}
*/
//创建一个全局变量
$thief = '小偷';
function catching(){
//1.关键字:global
global $thief;
//2.预定义变量:$GLOBALS
$thief = $GLOBALS['thief'];
return isset($thief) ? '抓住'.$thief : '没有抓住';//isset是判断是否存在
}
echo catching();
//3.传参数
echo '<hr>';
function catching2($a){
return isset($a) ? '抓住'.$a : '没有抓住';
}
echo catching2($thief);
//1.标准类型
//字符串
$name = '小明';
//整型
$age = 20;
//浮点数
$salary = 3000.5;
//布尔类型
$isMarried = false;
echo gettype($name).'<br>';// gettype()是获取变量类型
echo gettype($age).'<br>';
echo gettype($salary).'<br>';
echo gettype($isMarried);
echo '<hr>';
//2.复合类型:数组array,对象object
//数组
$xiao = ['鼬神','角都','长门'];
echo '最喜欢的是:'.$xiao[0].'<br>';
echo count($xiao).'<br>';//count()是显示数组元素的个数
echo '首领是:'.$xiao[count($xiao)-1];
//3.对象
echo'<hr>';
$bell = new stdClass();
$bell->name = '小明';
$bell->cook = function($foods){
return '会做'.$foods;
};
echo $bell->name.call_user_func($bell->cook,'猪蹄');
//4.NULL和 资源resource
echo '<hr>';
$file = fopen('demo3.php','r') or die('打开失败');
echo gettype($file);
//全局作用域
$name = '小明';
//函数作用域
function miss($demo){
return $GLOBALS['name'].'今年'.$demo.'岁';
}
echo miss('20');
echo '<hr>';
//超全局变量
echo $_GET['ha'];//获取url的?后面的变量
//1.定义常量
//函数
define('FACTION','晓组织');
//const关键字
const USER_NAME = '长门';
//2.访问
echo FACTION.'的首领是:'.USER_NAME;
//3.define 和 const的区别
$num = 100;
define('NUMBER',$num);
echo NUMBER.'<br>';
//const NUMBER2 = $num;
//echo NUMBER2;//会报错 const的值只能是标准变量
//const可以声明类常量
class Test{
const FIX = 'shuo';
}
echo Test::FIX;
批改老师:查无此人批改时间:2018-11-14 17:32:22
老师总结:标题写的常量,打开看到是变量,以为你弄错了呢,差点给你打回去。翻到下面才看到常量,不错。