《2022年PHP自学笔记 .pdf》由会员分享,可在线阅读,更多相关《2022年PHP自学笔记 .pdf(26页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、PHP 注:书一:PHP 4.0 入门与提高清华大学出版社吕京涛陈宗斌著2002 年1 月第 1 版2002 年 8 月第 2 次印刷书二:Web 专家 PHP 高级编程清华大学出版社Christopher Cosentino 著崔玮译2003 年 12 月第 1 次印刷定价:32.00 元书三:PHP4 开发指南清华大学出版社Bill McCarty 著天宏工作室译2002 年 12 月第 1 次印刷定价:58.00 元网址: 第一章:PHP概述一、概述1.句法 或:或:2.终止 PHP 脚本的执行exit();3.注释1).#注释内容2)./注释内容3)./*注释内容*/二、包含文件1.r
2、equire(filename)注:名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 26 页 -filename 文件中不能包括return 语句如:require(“myphp.php”);2.require_once(filename)确保给定的脚本中只包括一次指定的文件如:require_once(“myphp.php”);3.include(filename)注:filename 文件中可以包括return 语句如:include(“myphp.php”);同时 include 支持表达式$x=1;include(“file”.$x.”inc”);4.include_on
3、ce(filename)确保给定的脚本中只包括一次指定的文件5.注意:如:$a=1;include(“myphp.php”);/在 myphp.php 文件中仍然可以访问$a 的值第二章:语法基础一、语法基础1.数据类型1)类型转换方法一:/不改变原操作数的类型(int)$x;/或(integer)$x;(real)$x;/或(double)$x;或(float)$x;(string)$x;(array)$x;(object)$x;方法二:/不改变原操作数的类型Doubleval($x);/将参数视为双精度数Intval($x);/将参数视为整型数Strval($x):/将参数视为字符串型方法
4、三:/改变原操作数的类型$x=1.5;settype($x,”integer”);/$x=1 参数值:integer double string array object 2).取得操作数类型方法一:$x=1;gettype($x);/integer 方法二:is_long is_double is_string is_array is_object 名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 26 页 -2.字符串1).转义字符 n 换行符 r 回车 r 横表 反斜线$货币符号“双引号2).使用 ASCCII 码ACSII 码相关函数函数说明chr(n)返回 ASCII 码
5、为 n 的字符dechex(n)返回等于给定十进制值n 的十六进制值decoct(n)返回等于给定十进制n 的八进制值hexdec(n)返回等于给定十六进制值n 的十进制值octdec(n)返回等于给定八进制值n 的十进制值ord(c)返回字符 c 的 ASCII 码例:打印ASCII 码为 32-127 的字符的十进制、八进制、和十六进制值for($i=32;$i128;$i+)$c=chr($i);$octal=decoct($i);$hex=dechex($i);echo=”$i(octal$octal,hex$hex):$c”;3).单引号字符串注:1.在单引号字符串中,惟一允许的转义
6、序列是和,2.在输出单引号字符串时,不会执行变量替换4)printf(“the value of n is:%d”,$n);$result=sprintf(“the value of n is:%d”,$n);5).number_format()格式:number_format(number);number_format(number,decimals);number_format(number,decimals,dec_point,thousands_sep);参数:number:指定想要格式化的数值decimals:指定期望的小数位数thousands_sep:指定用作千位分隔符的字符默认
7、:格式化后的结果没有小数在任何小数位之前插入一个点(。)用逗号做为千位分隔符6).处理字符串名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 26 页 -1.获得中字符串的长度strlen(STRING)如:$mystr=”xcvfwfwef”;$mylen=strlen($mystr);2.去掉字符串中的空白字符(空白字符:空格、制表符、换行符等)函数说明chop(s)返回从右边去掉了空白的s 的值,与rtrim(s)相同ltrim(s)返回从左边去掉了空白的s 的值rtrim(s)返回从右边去掉了空白的s 的值,与 chop(s)相同trim(s)返回从两端去掉了空白的s 的值
8、3.大小写转换函数strtoupper()返回全部转换为大写的参数值strtolower()返回全部转换为小写的参数值4.比较字符串函数说明strcasecmp(s1,s2)执行不区分大小写比较,如果 s1 小于 s2,则返回小于0 的值,如果 s1 大于 s2,则返回大于0 的值,否则返回0 strcmp(s1,s2)执行区分大小写比较,如果s1 小于 s2,则返回小于0 的值,如果s1 大于 s2,则返回大于0 的值,否则返回0 strncasecmp(s1,s2,n)执行不区分大小写比较,如果 s1 小于 s2,则返回小于0 的值,如果 s1 大于 s2,则返回大于0 的值,否则返回0,
9、大比较中最多包括n 个字符strncmp(s1,s2,n)执行区分大小写比较,如果s1 小于 s2,则返回小于0 的值,如果s1 大于 s2,则返回大于0 的值,否则返回0,大比较中最多包括n 个字符5.查找和提取子串函数说明strchr(s1,s2)返回 s1 中从 s2 的第一次出现到最后的部分。如果没有发现s2,那么返回fasle,stristr 执行相同的操作stristr(s1,s2)返回 s1 中从 s2 的第一次出现到最后的部分。如果没有发现s2,那么返回fasle,比较时不考虑大小写strpos(s1,s2)返回 s1 中 s2 的第一次出现的整数位置,如果没有发现s2 返回
10、false strrchr(s1,s2)返回 s1 中从 s2 的最后一次出现到最后的部分,如果没有发现s2,返回false,比较中只使用s2 的第一个字符strstr(s1,s2)返回 s1 中从 s2 的第一次出现到最后的部分,如果没有发现s2,返回 false,strchr执行相同的操作substr(s,start)substr(s,start,len)返回 s 中由一个整数索引start 或两个索引start及 len指定的部分,字符串的第一个位置是位置0 6.替换子串函数说明名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 26 页 -str_replace(search
11、,replace,subject)搜索 subject 中的子串search,如果找到子串,使用replace替换第一次出现的search,然后返回subject 的值substr_replace(subject,replace,start,len)使用 replace 替换在 start 开始、长度为 len 的子串,然后返回subject 的值3.常量1.PHP 预定义常量_FILE_;/指定当前文件物理路径(包括文件名)_LINE_;/指定当前脚本所在的行数PHP_VERSION;/指定 PHP 程序的版本PHP_OS;/指定 PHP 解释器的操作系统名称TRUE;/该常量的值为true
12、 FALSE;/该常量的值为false E_ERROR;/指到最近的错误处E_WARNING;/指到最近的警告处E_PARSE;/剖析语法有潜在问题的地方E_NOTICE;/发生不正常现象但不一定是错误的地方,如存取一个不存在的变量例:2.用户定义常量1).常量的定义如:define(“CL_PI”,3.14159);2).常量的引用echo CL_PI;/无须$3).常量的测试echo defined(“CL_PI”);/如果已经定义了,返回1,否则返回 04).常量(精确到 14 位有效数字)echo pi();4.变量注:1).PHP 变量无需预先声明2).无需类型定义3).不允许未赋值
13、就使用例:$b=1;$a=true;/$a=$b 名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 26 页 -1.声明变量(1).全局变量:global$mystr(2).静态变量:static$mystr2/一般用于子程序循环中,使得循环结束,其变量仍然存在(3).动态变量:如:$name=”cbw”;$name=111;/$cbw=111;$name.”_1”=222;/$cbw_1=222;(4).标量变量$xx=”xx”2.判断变量是否已配置isset($mystr);/如果已配置则返回true3.删除变量unset($mystr);5.运算符1).算术运算符、*、/、+
14、、-例:$a=4;$b=2;/*$a+$b=6$a-$b=2$a*$b=8$a/$b=2$a%$b=0 /取余*/例:$a=5;$a+;/$a=6$a-;/$a=5 2).赋值运算符=例:$a=4;$b=$a;/$b=4 3).比较运算符=相等=相等且类型相同!=不等名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 26 页 -!=不等或类型不同=4).逻辑运算&而且(And)and 而且(And)|或者(Or)or 或者(Or)xor 异或(Xor)!不(Not)5).拼接字符串运算符.例:$str_string1=”这是”;$str_string2=”一个 PHP 程序”;$s
15、tr_string3=$str_string1.$str_string2;/$str_sring3=”这是一个PHP 程序”6).其它运算符$变量&变量的地址 (加在变量前)不显示错误信息 (加在函数前)-类的方法或者属性=数组的元素值?:三元运算子6.数组1).数字数组(传统数组:数组项的下标是数组序列)1.使用赋值语句例:$x=”cbw”;/$x0=”cbw”$x=”lj”;/$x1=”lj”例:$x1=”cbw”/$x1=”cbw”$x2=”lj”/$x2=”lj”$x=”q”/$x3=”q”例:$x10=”cbw”/$x10=”cbw”名师资料总结-精品资料欢迎下载-名师精心整理-第
16、7 页,共 26 页 -$x32=”lj”/$x32=”lj”$x=”q”/$x33=”q”2.使用 array 创建:例:$a=array(1,2,3,4);/$a0=1/$a1=2/$a2=3/$a3=4 例:$x=array(“c”,”b”,”w”);/$x0=”c”$x1=”b”$x2=”w”例:$x=array(10=”c”,”b”,”w”);/x10=”c”$x11=”b”$x12=”w”2).关联数组(数组项的下标是命名关键字)1.使用赋值语句例:$x“c”=”cbw”/$x“c”=”cbw”$x“l”=”lj”/$x“l”=”lj”$x“q”=”q”/$x“q”=”q”2.使用
17、 array 创建:例:$b=array(“name”=”cbw”,”sex”=”男”);/$b“name”=”cbw”/$b“sex”=”男”3).处理数组.返回数组长度:sizeof($myarray)/返回数组$myarray 的长度count($x)/返回数组$x 的元素数量.遍历数组元素:A.顺序数组:for($i=1;$i22;$i+)循环B.非顺序数组(也可用于顺序数组的遍历):1.while 循环例 1:reset($arr);/将数组的指针指到数组第一个元素/list:列出数组中元素的值each:返回数组中下一个元素的索引及值vhile(list(,$value)=each(
18、$arr)echo Value:$valuen;等价于:foreach($arr as$value)ecno value:$valuen;例 2 名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 26 页 -reset($arr);while(list($key,$value)each($arr)echo Key:$key;Value:$valuen;等价于:foreach$arr as$key=$value)echo Key:$key;Value:$valuen;1.foreach($myarray as$key=$string)循环或foreach($myarray as$st
19、ring)参数:$myarray:目标数组$key:数组索引变量(自动分配)$string:数组元素值(自动分配)例:$myarray=array(“name”=”cbw”,”sex”=”男”,”age”=”22”);foreach($myarray as$temp_str)echo$temp_str;/输出所有元素 输出:cbw 男 22 2.使用列举函数:current/next()/prev()/key()例:$myarray=array(name=cbw,sex=男,age=22);$mycurrent=current($myarray);echo key($myarray).=.$m
20、ycurrent.”;$mynext=next($myarray);echo key($myarray).=.$mynext.”;$mynext=next($myarray);echo key($myarray).=.$mynext.”;$myprev=prev($myarray);echo key($myarray).=.$myprev.”;输出:name=cbw sex=男age=22 sex=男3.each()函数例:$myarray=array(name=cbw,sex=男,age=22);$myeach=each($myarray);echo$each0.”;echo$each1.”
21、;echo$each“key”.”;echo$each“value”.”;名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 26 页 -$myeach=each($myarray);echo$myeach0.;echo$myeach1.;$myeach=each($myarray);echo$myeach0.;echo$myeach1.;输出:name cbw name cbw sex 男age 22 4.list()/each()/next()/prev()$myarray=array(name=cbw,sex=男,age=22);list($key,$value)=each($
22、myarray);echo$key=$value;list($key,$value)=each($myarray);echo$key=$value;list($key,$value)=each($myarray);echo$key=$value;输出:name=cbw sex=男age=22.循环取得数组变量值的键值$myarray=array(“name”=”cbw”,”sex”=”男”,”age”=”22”);foreach($array as$temp_key=$temp_str)echo“$temp_key=$temp_str”;.数组的排序sort()/asort()/rsort()
23、/Arsort()/ksort()/Krsort()例:$myarray=array(10=”Perl”,20=”PHP”,21=”Python”);sort($myarray);输出:0=PHP 1=Perl 2=Python 注:大写字母排在小写字母的前面排序函数总结名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 26 页 -操作函数结果按值对数组排序aort()0=PHP 1=Perl 2=Python 按值对关联数组排序asort()20=PHP 10=Perl 21=Python 按值的降序对数组排序arsort()21=Python 10=Perl 20=PHP 按
24、标识符对数组或关联数组排序ksort()10=Perl 20=PHP 21=Python 按标识符的降序对数组或关联数组排序krsort()21=Python 20=PHP 10=Perl 7.函数(用户自定义函数)1).访问函数外的值$a=1;function fun_temp($x)$x=$a;/不能访问$x=$GLOBALS“a”;/可以访问Global$a;/也可以访问$a=2;2).参数的默认值function fun_temp($x=”默认值”)echo$x;3).按值传递例:/创建:function fun_temp($x)$x=1;/调用:$y=0;fun_temp($y);e
25、cho&y;输出:0 4).按引用传递参数例:名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 26 页 -/创建:function fun_temp(&$x)$x=1;/调用:$y=0;fun_temp($y);echo&y;输出:1 或例:/创建:function fun_temp($x)$x=1;/调用:$y=0;fun_temp(&$y);echo&y;输出:1 5).返回值1.普通返回值例:function square($num)return$num*$num;引用:echo square(4);2.返回数组例:function small()return myarr
26、ay(0,1,2);引用:list($zero,$one,$two)=small();3 返回指针例:function&reference()return$some;引用:$newref=&reference();6).变量函数名师资料总结-精品资料欢迎下载-名师精心整理-第 12 页,共 26 页 -?/定义 foo()函数functlon foo()/定义 bar()函数functlon bar($arg=)echo In bar();argument was$arg.n;$func=foo;$func();/使用变量调用函数foo()$func=bar;$func(test);/使用变量
27、调用函数bar()?8.分支控制语句1).if/then 语句方法一:$a=5;$b=”4”;if($a$b)/在处理表达式时,系统会自动的把$b 转变成整形echo“ab”;elseif($a=$b)/可以只有if 语句部分echo“a=b”;else echo“a$b):print“ab”;elseif($a=$b):print“a=b”;else:print“ab”;endif;2).switch 语句方法一:$a=”100”;switch($a)case(10):echo“$a=10”;break;case(100):echo“$a=100”;default:名师资料总结-精品资料欢迎
28、下载-名师精心整理-第 13 页,共 26 页 -echo“$a=?”;方法二:$a=”100”;switch($a):case(10):echo“$a=10”;break;case(100):echo“$a=100”;default:echo“$a=?”;endswitch;3).for 循环方法一:for($i=1;$i10;$i+)echo$i;/或者:print$i;方法二:for($i=1;$i10;$i+):echo$i;/或者:print$i;endfor;4).foreach 循环5).while 循环方法一:while(条件)语句;/*if(条件)语句;else contin
29、ue;*/方法二:while(条件):语句;endwhile;6).do while 循环do(条件)语句;while(条件);注:名师资料总结-精品资料欢迎下载-名师精心整理-第 14 页,共 26 页 -break 用于跳出循环体continue 用于跳出本次循环,继续下一次循环的判断二、类类的创建与引用创建firt=$first;/把传递过来的$first 变量赋给该类的$first 变量成员,下同$this-last=$last;function set_number($number)$this-number=$number;function printf()echo Name:.$t
30、his-first.$this-last.;echo Number:.$this-number;/也可以使用return 返回值,$entry=new book();/创建类实体()可加也可不加$entry-set_name(Jane,Smith);$entry-set_number(555);$entry-printf();?输出:Name:Smith Number:555 2.构造函数first=$first;$this-last=$last;$this-number=$number;function sum()return$this-i;名师资料总结-精品资料欢迎下载-名师精心整理-第
31、15 页,共 26 页 -function printf()echo Name:.$this-first.$this-last.;echo Number:.$this-number;$entry=new users(崔,北为,100);/创建类实体$entry-printf ();?3.类的继承email=$email;$this-first=$first;$this-last=$last;$this-number=$number;function printf2()echo Name:.$this-first.$this-last.;echo Number:.$this-number.;ec
32、ho Email:.$this-email;$entry=new users2(崔,北为,100,);/创建类实体$entry-printf2 ();?4.重载方法email=$email;$this-first=$first;$this-last=$last;$this-number=$number;function printf ()/重载父类的printf 方法echo Name:.$this-first.$this-last.;echo Number:.$this-number.;echo Email:.$this-email;名师资料总结-精品资料欢迎下载-名师精心整理-第 16 页
33、,共 26 页 -$entry=new users3(崔,北为,100,);/创建类实体$entry-printf ();?5.调用父类的方法email=$email;$this-first=$first;$this-last=$last;$this-number=$number;function printf ()/重载父类的printf()方法echo Name:.$this-first.$this-last.;echo Number:.$this-number.;echo Email:.$this-email;function sum()/重载父类的sum()方法echo;echo Su
34、m=.(users:sum()+$this-j);/调用父类的sum()方法的返回值(二个冒号)$entry=new users4(崔,北为,100,);/创建类实体$entry-printf ();$entry-sum();?第三章会话注:会话文件的内容保存在php.ini 文件中 session.save_path中所指向的路径里。一、启动会话或断续已有的会话session_start();二、注册会话变量注:只有经过注册过的会话变量,会话才会跟踪1.判断一个会话变量是否注册过session_is_registered(“mysessionstr”);/如果已注册过则返回true,否则返回
35、false2.注册会话变量session_register(“mysessionstr”);三、会话变量的赋值与变通变量的赋值一样,如$mysessionstr=20;四、访问会话变量名师资料总结-精品资料欢迎下载-名师精心整理-第 17 页,共 26 页 -与访问普通变量一样,如:echo$mysessionstr;五、注销会话变量1.注销指定的会话变量注:该方法不会删除当前页面上的该变量的内容,但该变量的值不再传递到其他页面session_unregister(“mysessionstr”);2.注销所有会话变量session_unset();/无任何参数六、结束会话注:只有正确的结束会话
36、,会话文件才能删除(物理删除)第四章获取数据一、获取URL 中?后的数据如:发送页面:.action=”php2.asp?id=5”.接收页面:可以用以下二种方式得到id 的值1.id=$id;2.id=$HTTP_GET_V ARSid;二、获取表单中的数据如:发送页面:接收页面:可以用以下二种方式得到表单中的数据1.name=$name;2.name=$HTTP_POST_V ARSname;三、获取环境变量的数据1.重要的 PHP 环境变量环境变量说明CONTENT_LENGTH 以字节表示的请求主体的长度CONTENT_TYPE MIME 在请求的主体中键入数据DOCUMENT_ROO
37、T Web 服务器的文档目录树的根的路径GATEWAY_INTERFACE Web 浏览器所使用的CGI 协议的版本HTTP_ACCEPT HTTP Accept:文件头的内容HTTP_ACCEPT_CHARSETHTTP Accept-Charset:文件头的内容,它表示客户可以理解的字符集HTTP_ACCEPT_ENCODING HTTP Accept-Encoding:文件头的内容,它表示客户可以理解的内容类型HTTP_ACCEPT_LANGUAGE HTTP Accept-Language:文件头的内容,它表示客户喜爱的语言HTTP_CONNECTION HTTP Connection
38、:文件头的内容,它表示客户所请求的选项HTTP_HOST HTTP Host:文件头的内容,它表示在表达请求时客户所使用的主机名名师资料总结-精品资料欢迎下载-名师精心整理-第 18 页,共 26 页 -HTTP_REFERER 将客户浏览器发送到当前页面的Web 页的 URL HTTP_USER_AGENT HTTP User-Agent:文件头的内容,它表示客户浏览器和版本PA TH 与服务器环境相关的执行路径QUERY_STRING 与请求一起出现的查询字符串(如果存在)REMOTE_ADDR 客户的 IP 地址REMOTE_HOST 客户的主机名REMOTE_PORT 发出请求的客户端
39、口地址REQUEST_METHOD 使用的 HTTP 请求方法,如:GET、POST、PUT 或 HEAD REQUEST_URI 用于访问当前页面的URL,该 URL 由一个 URL 和一个可选的查询字符串组成SCRIPT_FILENAME 当前脚本的绝对路径名SCRIPT_NAME 当前脚本的URL SERVER_ADMIN Web 服务器的管理员的E-mail 地址SERVER_HOST 与处理请求的Web 服务器相关联的主机名SERVER_PORT Web 服务器进行通信所使用的端口SERVER_PROTOCOL 进行请求的协议名和版本SERVER_SJGNATURE 标识用于处理请求
40、的Web 服务器版本和主机名的字符串SERVER_SOFTWARE 标识 Web 服务器程序和版本的字符串2.环境变量的状态echo phpinfo();3.环境变量的引用:就像引用用户定义的变量一样如:echo$SERVER_PORT;第五章数据库交互一、PHP4.1 支持的数据库1.MySQL 2.mSQL 3.MS SQL 4.filePro(Read only)5.Informix 6.interBase 7.Oracle 8.Ovrimos 9.Sybase 10.DB+11.DBM 12.PostgreSQL 13.Frontbase 二、PHP 的特定数据库函数1.连接数据库服务
41、器1).*_connect mysql_connect(server,user,password);mssql_connect(server,user,password);名师资料总结-精品资料欢迎下载-名师精心整理-第 19 页,共 26 页 -/找到 php.ini 中;extension=php_mssql.dll把前面;去掉保存,重启 apache服务器pg_connect(string);如:pg_connect(“host=localhost prot=5432 dbname=test user=name password=123”);$handle=mssql_connect(7
42、BB2389B11EA496,sa);2).*_pconnect mysql_pconnect(server,user,password);mssql_pconnect(server,user,password);pg_pConnect(string);说明:本函数和*_connect()雷同。不同的地方在于使用本函数打开数据库时,程序会先寻找是否曾经执行过本函数,若执行过则返回先前执行的ID。另一个不同的地方是本函数无法使用*_close()关闭数据库。注:(1).server:为服务器主机名或IP 地址user:为登录用户名password:为登录密码(2).host:为主机名port:为
43、端口dbname:为数据库名user:为用户名password:为密码2.选择正确的数据库(MS SQL 和 MySQL)mysql_select_db(datebasestring,sqlcon);或mssql_select_db(datebasestring,sqlcon);注:datebasestring:为数据库名称sqlcon:为数据库连接名如:$handle=msql_connect(localhost,root,);msql_select_db(userinfo,$handle);,userinfo:数据库名字3.数据库查询、插入、读取和删除数据mysql_query(sqlst
44、ring,sqlcon);mssql_query(sqlstring sqlcon);注:sqlstring:为要执行的SQL 语句sqlcon:为数据库连接名4.查询结果的返回值1).fetch_array mysql_fetch_array(result);mssql_fetch_array(result);pg_fetch_array(result);注:结果中的数据被装入数组(关联和索引)的域中。数据的不同列将被装入不同的数组的域中数组的键值对应于返回数据的列名2).fetch_row 名师资料总结-精品资料欢迎下载-名师精心整理-第 20 页,共 26 页 -mysql_fetch_
45、row(result);mssql_fetch_row(result);pg_fetch_row(result):注:本函数用来将查询结果result 之单列拆到数组变量中。数组的索引是数字索引,第一个的索引值是0。若result 没有资料,则返回false 值。如:?php$conn=mysql_pconnect(localhost,root,);if(!$conn)echo 连接失败 n;exit;mysql_select_db(cbw,$conn);$result=mysql_query(SELECT*FROM admin,$conn);if(!$result)echo 查询失败 n;e
46、xit;$fayy=mysql_fetch_row($result);if($fayy)echo$fayy0;echo$fayy1;echo$fayy2.;else echo 出错;?3).fetch_object mssql_fetch_object(result);注:本函数用来将查询结果result 拆到类变量中。使用方法和mssql_fetch_array()几乎相同,不同的地方在于本函数返回资料是类而不是数组。若result 没有资料,则返回false 值。如:sid.;echo$fayy-sname.;echo$fayy-ssex.?4).fetch_field 注:获取查询结果中
47、的列信息并以对象的形式返回例:name.n;echo 所属表名:.$dbarray-table.n;echo 列的最大长度:.$dbarray-max_length.n;echo 列不可为空:.$dbarray-not_null.n;echo 列为主键:.$dbarray-primary_key.n;echo 列不是 unique_key:.$dbarray-multiple_key.n;echo 列为数字:.$dbarray-numeric.n;echo 列为 BLOB:.$dbarray-blob.n;echo 列的类型:.$dbarray-type.n;echo 列为无符号类型:.$db
48、array-unsigned.n;echo 列为 BLOB:.$dbarray-blob.n;echo 列为零填充:.$dbarray-zerofill.n;mysql_close($handle);?综合实例:查询结果的返回值?php$handle=mysql_connect(localhost,root,);/创建数据库连接if(!$handle)/如果连接不成功echo 连接失败 n;exit;mysql_select_db(cbw,$handle);/选择数据库名师资料总结-精品资料欢迎下载-名师精心整理-第 22 页,共 26 页 -$dbresult=mysql_query(sel
49、ect*from admin,$handle);/执行 SQL 语句if(!$dbresult)/如果查询失败echo 查询失败 n;exit;while($dbarray=mysql_fetch_array($dbresult)/返回数据给数组echo.$dbarray1._;/索引数组元素(数字数组)echo$dbarraysname.n;/索引数组元素(关联数组)mysql_close($handle);/关闭数据库连接?5.关闭数据库连接mysql_close();mssql_close();pg_close();三、DBX 函数1.建立数据库连接dbx_connect(MODULE,
50、HOST,DA TABASE,USER,PASSWORD,PERSISTENT);参数如下:1).MODULE:DBX_MYSQLMySQL 数据库DBX_ODBC 任何支持ODBC 连接的数据库DBX_PGSQLPostgreSQL 数据库DBX_MSSQLMS SQL 数据库DBX_FBSQLFrontbase 数据库2).HOST 数据库主机名或IP 地址3).DATABASE 数据库服务器上的数据库名4).USER 用户名5).PASSWORD 密码6).PERSISTENT 是否永久连接,如果希望,让该值为DBX_PERSISTENT,否则不需要该参数2.返回错误dbx_error(