<?php
//设置字符集
header("content-type:text/html;charset=utf-8");
//常量定义,不可改变,不可删除
define('HERE_SITE','www.php.cn');
const CITY = '西安';
echo HERE_SITE;
echo CITY;
?>点击 "运行实例" 按钮查看在线实例
什么是变量的作用域?
变量的作用域:变量可以使用的代码的范围
1.局部变量:仅作用于方法(function)中使用,方法外此变量不可被使用或者引用
<?php
function get_user_name()
{
$id = 1;
if($id == 1){
return "luo";
}else{
return "zhu";
}
}
/*
echo get_user_name();会正确输出luo,说明我们的$id变量在函数内部起作用
echo $id;如果此时输出$id会提示你此变量未被定义:说明我们在函数中定义的变量,外部不可调用
*/
echo get_user_name();
?>点击 "运行实例" 按钮查看在线实例
2.全局变量:方法function外定义的变量,作用于全局作用域
当前文件除过方法内都可生效,其他文件需要引用的话,需要include 或者requiire包含当前文件。
<?php
$user_id =1 ;
function get_user_name_one()
{
global $user_id ;//声明$id为全局变量
if($user_id == 1){
return "luo";
}else{
return "zhu";
}
}
/*如果此时在方法里声明$id为全局变量在方法里就可以使用
此时echo get_user_name_one();调用方法也是可以正确执行的
输出echo $user_id;也是有结果的
*/
echo get_user_name_one(),'<br>';
echo $id;
?>点击 "运行实例" 按钮查看在线实例
3.超全局变量:如$_POST,$GLOBLES[],$SESSION,$FILE在根目录下的所有文件均可引用
<?php
$GLOBALS['name'] = '警长';
function print_name()
{
return "我是".$GLOBALS['name'] ;
}
echo print_name();
?>点击 "运行实例" 按钮查看在线实例
4.静态变量:static只在当前函数中使用,保持变量不被销毁
<?php
function num()
{
static $i= 1;
return "第".$i."次输出".$i++;
}
echo num(),'<br>';
echo num(),'<br>';
echo num(),'<br>';
echo num(),'<br>';
echo num(),'<br>';
?>点击 "运行实例" 按钮查看在线实例
/*变量类型:*/ /*变量类型: 1.标量:单值变量,数值,布尔,基本数据类型 */ <?php $city = "西安"; $float = 400.00; $int = 10000; $bool = false; echo '我调查'.$city.'总人口约'.$float.'万,平均工资'.$int.'元--调查结果:',$bool?'正确':'错误'; echo '<hr>'; ?>
点击 "运行实例" 按钮查看在线实例
/*变量类型:
2.复合类型:多值变量(数组array和对象object)
*/
$arr = array("0","1","2","3");
for($i=0;$i<count($arr);$i++){
echo $arr[$i],'<br>';
}
echo '<hr>';
$arr1 = array(
array('id'=>'1','name'=>'luopan','sex'=>'nan'),
array('id'=>'2','name'=>'zhangsan','sex'=>'nv')
);
foreach($arr1 as $k=>$v){
echo '用户ID :'.$v['id'],'<br>';
echo '用户姓名:'.$v['name'],'<br>';
echo '用户性别:'.$v['sex'],'<br>';
}
echo '<hr>';
class frui_use{
public $type;
public $price;
public $usage;
public function eat(){
return $this->type.'吃法是'.$this->usage;
}
public function price(){
return $this->type.'价格是'.$this->price."元";
}
}
$fruit = new frui_use;
$fruit->type = "苹果";
$fruit->price = 20;
$fruit->usage ="削皮";
echo $fruit->eat( );
echo '<hr>';
echo $fruit->price( );
echo '<hr>';
/*变量类型:
3.特殊类型:null,资源
*/
$myfile = fopen("newfile.txt", "w") or die("Unable to open file!");
$txt = "第一行\n";
fwrite($myfile, $txt);
$txt = "第二行\n";
fwrite($myfile, $txt);
fclose($myfile);
/*变量检测:
is_null(); 如果变量定义未被赋值,赋null值,被销毁返回ture
empty(); 如果变量为null,"",0,"0",空数组
isset(); empty结果取反
*/
$var ;
$var1 = null ;
$var2 = "pjj";
$var3 = "ok";
unset($var2);
@var_dump(is_null($var));
@var_dump(is_null($var1));
@var_dump(is_null($var2));
@var_dump(is_null($var3));
echo '<hr>';
$str = null;
$str1 = "";
$str2 = 0;
$str3 = "0";
$str4 = array();
@var_dump(empty($str));
@var_dump(empty($str1));
@var_dump(empty($str2));
@var_dump(empty($str3));
@var_dump(empty($str4));
echo '<hr>';
$number= null;
@var_dump(isset($numbers));
echo '<hr>';
/*
分支结构
*/
/*1.if-else if-else*/
$age=22;
if($age<18){
echo "你是一个小孩!";
}else if($age>=18 &&$age<60){
echo "你是一个成年人!";
}else{
echo "你是一个老年人!";
}
echo '<hr>';
/*2.switch*/
$pilotLamp = 20;
switch($pilotLamp){
case 0 :
echo "红灯亮了,停下来!";
break;
case 1 :
echo "绿灯灯亮了,赶紧走!";
break;
case 2 :
echo "黄灯灯亮了,等一下!";
break;
default: echo "指示灯坏了!";
}
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号