001-开学典礼002-变量概念及命名规范?php//$a是钥匙[107房间],房间里的内容是值,/*echo$a,什么过程?根据钥匙上的标贴(107)----找到107房间---读取房间内容(一男两女).*/$a=23;/*过程:先根据$a,找到$a的房间号,到相应的房间,把里面的值,换成45*/$a=45;echo$a;//45??php/*1:php的变量怎么声明用$变量名来声明*/$price=40.1;/*2:PHP变量的命名规范变量名是字母,下滑线,数字的组合,并且数字不能做开头*/$_=3;$_price=5;$man1='zhangsan';$man2='lisi';echo$price,$_,$_price,$man1,$man2,'br/';/*3:PHP变量名是区分大小写的意味着,$a,$A,不是一个变量.*/$name='xiaohua';$Name='xiaogang';echo$name,'~',$Name,'br/';/*4:也可以用中文来做变量,但是严重不推荐*/$姓名='刘备';echo$姓名;003-变量类型?php//变量类型/*1:整型对应数学中的整数.1,2,3,4,5...990-1,-2.......*/$age=28;echo$age,'br/';$age=99;echo$age,'br/';$age=027;echo$age,'br/';//思考打印结果,为什么??/****浮点型对应数学中的小数0.2387.5362.4****/$fl=0.23;echo$fl,'br/';//可不可以把上面的浮点的值,修改为整型值.//答:在PHP中,可以,PHP中,可以修改变量的值与类型.//在C语言中,下一行代码是不允许的.$fl=85;/*从数学上看0.3-0.2==0.1*/$a=0.3;$b=0.2;$c=0.1;if(($a-$b)==$c){echo'0.3-0.2等于0.1','br/';}else{echo'0.3-0.2不等于0.1','br/';}/***字符串,一串字符,生活中常见.用单引号,或双引号包起来.***/$msg='waitforyou!';echo$msg,'br/';$msg=waitforme!;echo$msg,'br/';/*双引号,单引号有何区别?在课表上有专门的章节,讲字符串与数组部分,会详解讲.*//**布尔型,只有两个值,要么是真,要么假,甚至通俗叫真假型**/$isman=true;$iswoman=false;echo$isman,$iswoman,'br/';//牵涉到变量类型转换.//直接echo布尔型的时间,布尔型被转换成了字符串,分别1,''//一个booleanTRUE值被转换成字符串1。BooleanFALSE被转换成(空的字符串)。//布尔值只有两种,但是运算很重要.//比如,逻辑与,逻辑或,逻辑反,异或(在运算符讲解中,详解讲解)/****燕式教学法,燕十八发明的.布尔,数学家,乔治.布尔发明的.****///想完整的查看布尔型var_dump($isman);var_dump($iswoman);print_r($isman);print_r($iswoman);/***echo输出变量,适宜于整型,浮点型,字符串型,这种标量类型print_r适合后面要学的对象,数组,这种二维或多维结构的数据.var_dump,不仅可以打印数据,还可以打出数据的类型.***//****NULL型,这种类型,只有一个值,即NULL,意味着空.四大皆空的空我有一张银行卡,存1000,取1000元,账面还有0元我说:燕的账户=====0元,这种情况整型的0,是一个整型值.李四,没有身份证,根本连银行卡都没有.这种情况,值是多少?值就没有这种情况就是NULL****///以$f=5;来说/*$f先在变量名的一个表中,有f但是,f却没有指向地址.自然,也就没有值一个钥匙(107)---指向---107房间NULL型钥匙,---连钥匙的齿都没有,也没有标号,指向哪一个房间.*/$user=null;//没有一个值./****一个变量,什么时间为null1:给一个变量赋值为null,相当于银行账户取消,卡消磁.2:某个变量,被unset掉.(unset是销毁一个变量)3:只声明,不赋值,也为null*****/$age=22;unset($age);$class;var_dump($user);var_dump($class);var_dump($age);004-动态变量及变量类型检测?php//动态变量/*动态变量,即---变量名,还可以是一个变量PHP的语法非常灵活,允许变量名字,仍是一个变量.*/$str='hello';$hello='welcometozixue.it';echo$str;//hello;echo$hello;//welcometozixue.itecho$$str;//$str的值是hello,hello又充当了下一个变量的名字,即最终显示$hello的值,即welcom...echo'hr/';$a='hello';$hello='world';$world='china';echo$$$a;//$a:hello,$$a==$hello==world;$$$a=$world==china;??php//$_GET地址栏传值,可能有的同学还没碰到过,如不知道,先照做.$who=$_GET['who'];$laoda='刘备';$laoliang='关羽';$laosan='张飞';//$who有可能是laoda,laoliang,laosanecho$$who;??php//变量的检测//在讲解的NULL的过程,有些变量,根本就没有声明过,//或者是被unset掉了,再去引用变量的时候,提示一个NOTICE//问:我能不能,在用这个变量之前,先判断一个,这个变量有没有.//如果有,我再进一步操作.//答:可以.即---如何检测一个变量已存在.//知识点:用isset来检验一个变量是否存在.$age=23;if(isset($age)){echo'age变量已经声明了';}else{echo'user变量根本就不存在';}//不声明$userif(isset($user)){echo'user变量已经声明了';}else{echo'user变量根本就不存在';}??php//变量类型的判断$a=123;//整型$b='123';//字符串型$c=78.9;//浮点型$d=null;//NULL型$e=true;//布尔型if(is_int($a)){echo'a是int型','br/';}else{echo'a不是Int型,','br/';}if(is_string($b)){echo'b是string型','br/';}else{echo'b不是string型,','br/';}//gettype,直接获取一个变量的类型.echo'c是',gettype($c),'br/';echo'd是',gettype($d),'br/';echo'e是',gettype($e),'br/';??php//变量的销毁if(isset($age)){echo'age变量已设置';}else{echo'age变量未设置';}$age=22;if(isset($age)){echo'age变量已设置';}else{echo'age变量未设置';}unset($age);//$age变量被销毁了.if(isset($age)){echo'age变量已设置';}else{echo'age变量未设置';}//为什么要把变量销毁//因为内存空间是有限的,销毁变量,可以腾出空间.//拆迁就是unset,拆掉的是旧房子,腾出的地皮,用来储存新值.?005-传值赋值与引用赋值?php//09.php//传值赋值,引用赋值$a=3;$b=5;//如果是新手,可能会对这个=号,误会,这个等于号,是赋值用的.$a=$b;//$a=$b//发生的是:把$b的值,读出来,再把值,放到$a的空间里,即赋给$a.//就是把$b的值,传递给$a,叫做传值赋值.echo$a,'br/';//5;//在这个过程中,仅仅是参考了一个$b的值,然后呢,把$b的值,复制一份到a的空间去.//之后,$a,$b,两者还是没有关系,因为$a,$b的值还是放在各自的内存空间echo$a,$b,'br/';//5,5echo$b=99;echo$a,'~',$b,'br/';//5,??php//引用赋值$a=3;$b=5;//下面这一行,发生了://把$a这把钥匙的指向,指向了$b的地址.//即:$a,$b,指向同一个地址?//就像,两个钥匙,指向同一个房间.$a=&$b;echo$a,$b,'br/';$b=9;echo$a,$b,'br/';//99//================认真看下一题====//unset($b);echo'~~~',$a,'~~~';//9/*原因很简单,因为有$a,$b两个变量指向同一个地址.$b销毁了,$a没销毁,变量有一个机制,当某段地址存的值,有一个变量在指向他的时候,就不006-常量概念及定义方法?php/****************变量是可以随意赋值的,$pi,这个重要的变量,被很多公式参考的一个变量.结果,被其他开发人员,给重赋值了?影响了所有的公式.这时,怎么办?问题很明显:某个重要的值,如果赋给变量,容易被修改.解决办法(1):在入职合同里,写清楚,如果重赋值$pi,直接开除.解决办法(2)想:如果某种量,他的值,一旦定义,就不能修改,那就太好了.PHP有没有这种好使的东西?答:有,常量,常量的值不能修改.*/??php//珠峰的高度是8846/*定义常量的语法//define('常量名','常量值');*/define('HEIGHT',8846);/*常量的引用echo常量名;//没有$符号*/echoHEIGHT,'br/';/**常量的特点1:一旦定义,值不能被修改,不能重新赋值**///HEIGHT=8888;//直接语法错误/**有同学想:既然常量不能用等号重新赋值,那么能否用define,再定义一次,并且,定义一个新值常量的特点1:一旦定义,也不能重复定义**/define('HEIGHT',8888);/**刚才,虽然重新定义提示了一下,但是,值到底有没有被改成8888呢?**/echoHEIGHT,'br/';//还是8846??php//常量的第3个重要特点,即全局有效性,说白了,就是页面任意一处都能访问到.//这个特点需要结合函数才能体现//没学过函数的同学先不要着急,可以先记住这个特点.define('HEI',8846);$hei=1234;echoHEI;//8846echo'br/';echo$hei;//1234;echo'hr/';functiont(){echoHEI;//8846echo'br/';var_dump($hei);//}t();//函数,函数体内,变量有一个作用域的概念.//比方:整个页面是操场//函数是操场内的一间小屋.//操场上,有一个用户:张三//在小屋里,喊张三,//PHP会认为,在小屋里找张三,//而且小屋里张三,和操作上的张三,不是一个人.//函数有自己的一片小空间,有自己的变量范围//但,与之对比的是,常量,却正确的打印出来.//这就是我们所说的,常量的穿透性,//常量一旦定义,在页面的任何旮旯角落里,都能够访问到.?007-常量用法详细探讨?php//常量的命名规则//常量的命名规则和变量一样define('hei',8846);echohei;//但是,习惯上大写