开始使用PHP例:helloworld.phphtmlheadtitleHelloWorld/title/headbodyp第一个PHP程序/pp?phpecho‘HelloWorld!’;?/pp时间:?phpechodate(“Y-m-dH:i:s”);?/p/body/html四种php标记:1.?phpecho‘hello’;?规范的2.?echo‘hello’;?短标签(php.ini需要开启短标签模式)3.scriptlanguage=“php”echo‘hello’;/script4.%echo‘hello’;%ASP风格(默认不支持,PHP6将把这种删除)PHP标记1.多行注释/*ThisscriptishelloworldAuthor:davidDate:2010.04.01*/2.单行注释echo‘hello’;//printhelloecho‘hello’;#printhello3.文档注释/***获取用户数据*@paramintuid*@authordavid*/PHP注释1.变量声明变量以美元符$开头,然后是变量名;变量名由字母或下划线开头,由字母,下划线,数字组成;变量名区分大小写;Php是弱类型的语言,不需要事先声明变量的数据类型;Php可以不用显示的声明变量就直接使用,不过好的编码习惯:所有的变量在使用前应该进行声明;例:$age=25;$color=‘red’;$sum=12+“15”;//$sum=27变量2.变量赋值(1).值赋值:就是将赋值表达式的值复制到变量;(2).引用赋值:php4引入了引用赋值功能,创建的变量与另一个变量引用的内容相同。例:$val1=‘hello’;$val2=&$val1;echo$val2;$val2=‘goodbye’;echo$val2;echo$val1;变量2.Php的超级全局变量php提供了很多有用的预定义变量,用于提供大量与环境有关的信息。(1).$_SERVER该全局变量包含着服务器和客户端配置及当前请求环境的有关信息$_SERVER[‘HTTP_REFERER’]:引导用户到达当前页面的URL$_SERVER[‘REMOTE_ADDR’]:客户端IP地址$_SERVER[‘REQUEST_URI’]:URL的路径部份$_SERVER[‘HTTP_USER_AGENT’]:操作系统和浏览器的有关信息变量(2).$_GET该变量包含使用GET方法传递的参数的有关信息;例:url:=100&page=2$id=$_GET[‘id’];$page=$_GET[‘page’];变量(3).$_POST该变量包含使用POST方法传递的参数的有关信息;例:html:formname=“reg”action=“test.php”method=“post”用户名:inputtype=“text”name=“username”/密码:inputtype=“password”name=“passwd”/inputtype=“submit”value=“提交”//formphp:$username=$_POST[‘username’];$passwd=$_POST[‘passwd’];变量(4).$_REQUEST该变量记录着通过各种输入方法传递给脚本的变量,如GETPOST,但不要用这个超级全局变量,因为它不安全;(5).$_COOKIE(6).$_SESSION(7).$_FILES(8).$_ENV(9).$GLOBALS变量3.变量的变量$val_1=‘hello’;$$val_1=‘world’;echo$hello;echo$val_1;echo${$val_1};变量1.常量的定义常量是指在程序执行中无法修改的值。如PI(3.1415926);在脚本执行期间该值不能改变;常量对大小写敏感,通常常量名总是大写;常量是全局的,可以在脚本的任何地方引用;常量分为内置常量和自定义常量;常量使用define()函数定义;判断常量是否定义可以用defined例:define(‘PI’,3.1415926);echoPI;常量2.内置常量PHP_OSPHP运行的操作系统PHP_VERSIONPHP版本3.魔术常量__LINE__文件中的当前行号;__FILE__文件的完整路径__FUNCTION__函数名称;__CLASS__类的名称;__METHOD__类的方法名;常量一、标量数据类型1.字符串(string)字符串有三种定义方式:单引号,双引号,定界符;单引号字符串中出现的变量不会被变量的值替代;双引号字符串中最重要的一点是其中的变量会被变量值替代;如果遇到美元符号($),解析器会尽可能多地取得后面的字符以组成一个合法的变量名,如果想明确的指定名字的结束,用花括号把变量名括起来。例:$beer=‘Heineken’;echo“Hedranksome{$beer}s”;数据类型字符串定界的方法使用定界符语法““例:$str=EODExampleofstring;usingheredocsyntax;EOD;echo$str;使用定界符要注意:结束标识符所在的行不能包含任何其它字符,这意味着该标识符不能被缩进,在分号之前之后数据类型\n换行\r回车\t水平制表符\\反斜线\$美元符\”双引号转义字符2.整型(integer)$age=25;3.浮点型(float,double)$num=5.39;4.布尔型(bool)$bo=TRUE;$bo=FALSE;以下值被认为是FALSE:布尔值FALSE整型值0浮点型值0.0空白字符串和字符串“0”’0’没有成员变量的数组$a=array()没有单元的对象特殊类型的NULL数据类型二、复合数据类型1.数组$week=array(‘星期一’,‘星期二’,‘星期三’);2.对象$db=newdb;数据类型三、特殊数据类型1.资源$fh=fopen(“test.txt”,“r”);2.nullnull无,表示没有值,null不表示空格,也不表示0;以下情况,则认为是null:没有设置为任何预定义的变量;明确的赋值为null;使用函数unset()清除;数据类型因为php对于类型定义非常的松散,所以有时会根据引用变量的环境,将变量自动转换为最适合的类型;例1:$num=5;$str=“15”;echo$num+$str;例2:$str=“100hello”;$num=200;echo$num+$str;例3:$str=‘1.2’;if($str){echo‘helloworld’;}类型自动转换1.gettype()返回变量的类型共有8个可能的值string、integer、float、boolean、array、object、null、unknow例:$str=‘hello’;echogettype($str);2.is_type()查看变量是否属于某个类型,是返回TRUE,否返回FALSE;$arr=array(1);echois_array($arr);$num=5;echois_int($num);is_numeric//数字2343‘333’与类型相关的函数3.类型转换$foo=10ddd;$bar=(int)$foo;//$bar=intval($foo);//(float)$afloatval($a)(int),(integer)-转换成整型(bool),(boolean)-转换成布尔型(float),(double)-转换成浮点型(string)-转换成字符串(array)-转换成数组(object)-转换成对象4.var_dump()var_dump()函数用来得到变量的类型和值的详细信息例:$str=‘hello’;var_dump($str);$arr=array(‘A’,‘B’,‘C’);var_dump($arr);与类型相关的函数1.列举出PHP中的标量数据类型,复合数据类型和特殊数据类型;2.下列哪个说法是错误的?A.gettype()是查看数据类型的;B.没有被赋值的变量是0;C.unset()的变量被认为是NULL;D.双引号字符串最重要的一点是其中的变量名会被变量值替代;3.以下代码执行的结果??php$num=6+false+null+“24linux”;echo$num;?练习