Home > php教程 > php手册 > PHP面向对象编程的基础知识讲解

PHP面向对象编程的基础知识讲解

WBOY
Release: 2016-06-13 11:05:50
Original
1001 people have browsed it

我们今天为大家介绍的是关于下面我们就通过实例来说明使用PHP面向对象编程的实际意义和应用方法。

我们通常在做一个有数据库后台的网站的时候,都会考虑到程序需要适用于不同的应用环境。和其他编程语言有所不同的是,在PHP中,操作数据库的是一系列的具体功能函数(如果你不使用ODBC接口的话)。这样做虽然效率很高,但是封装却不够。如果有一个统一的数据库接口,那么我们就可以不对程序做任何修改而适用于多种数据库,从而使程序的移植性和跨平台能力都大大提高。

PHP面向对象编程的完成,需要进行对象封装,也就是编写类。我们可以通过生成一个新的SQL类实现对数据库的简单封装。例如:

<ol class="dp-xml">
<li class="alt"><span><span class="tag"><strong><font color="#006699"></font></strong></span><span> ?  </span></span></li>
<li class=""><span>class SQL  </span></li>
<li class="alt"><span>{  </span></li>
<li class=""><span>var $Driver; //实际操作的数据库驱动子类  </span></li>
<li class="alt"><span>var $connection; //共用的数据库连接变量  </span></li>
<li class=""><span>function DriverRegister($d)  </span></li>
<li class="alt"><span>{  </span></li>
<li class=""><span>if($d!="")  </span></li>
<li class="alt"><span>{  </span></li>
<li class="">
<span>$</span><span class="attribute"><font color="#ff0000">include_path</font></span><span> = </span><span class="attribute-value"><font color="#0000ff">ini_get</font></span><span>("include_path");  </span>
</li>
<li class="alt">
<span>$</span><span class="attribute"><font color="#ff0000">DriverFile</font></span><span> = $include_path."/".$d.".php";  </span>
</li>
<li class=""><span>//驱动的存放路径必须在PHP.ini文件中设定的INCLUDE_PATH下  </span></li>
<li class="alt"><span>if( file_exists( $DriverFile)) //查找驱动是否存在  </span></li>
<li class=""><span>{  </span></li>
<li class="alt"><span>include($DriverFile);  </span></li>
<li class="">
<span>$this-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span class="attribute"><font color="#ff0000">Driver</font></span><span> = </span><span class="attribute-value"><font color="#0000ff">new</font></span><span> $d();  </span>
</li>
<li class="alt"><span>// 根据驱动名称生成相应的数据库驱动类  </span></li>
<li class=""><span>return true;  </span></li>
<li class="alt"><span>}  </span></li>
<li class=""><span>}  </span></li>
<li class="alt"><span>return false; //注册驱动失败  </span></li>
<li class=""><span>}  </span></li>
<li class="alt"><span>function Connect($host,$user,$passwd,$database)//连接数据库的函数  </span></li>
<li class=""><span>{  </span></li>
<li class="alt">
<span>$this-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>Driver-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span class="attribute"><font color="#ff0000">host</font></span><span>=$host;  </span>
</li>
<li class="">
<span>$this-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>Driver-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span class="attribute"><font color="#ff0000">user</font></span><span>=$user;  </span>
</li>
<li class="alt">
<span>$this-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>Driver-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span class="attribute"><font color="#ff0000">passwd</font></span><span>=$pas  </span>
</li>
<li class=""><span>swd;  </span></li>
<li class="alt">
<span>$this-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>Driver-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span class="attribute"><font color="#ff0000">database</font></span><span>=$d  </span>
</li>
<li class=""><span>atabase;  </span></li>
<li class="alt">
<span>$this-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span class="attribute"><font color="#ff0000">connection</font></span><span> = $this-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>Driver-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>Connect();  </span>
</li>
<li class=""><span>}  </span></li>
<li class="alt"><span>function Close()//关闭数据库函数  </span></li>
<li class=""><span>{  </span></li>
<li class="alt">
<span>$this-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>Driver-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>close($this-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>connection);  </span>
</li>
<li class=""><span>}  </span></li>
<li class="alt"><span>function Query($queryStr)//数据库字符串查询函数  </span></li>
<li class=""><span>{  </span></li>
<li class="alt">
<span>return $this-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>Driver-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>query($queryStr,$this-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>connection);  </span>
</li>
<li class=""><span>}  </span></li>
<li class="alt"><span>function getRows($res)//查找行  </span></li>
<li class=""><span>{  </span></li>
<li class="alt">
<span>return $this-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>Driver-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>getRows($res);  </span>
</li>
<li class=""><span>}  </span></li>
<li class="alt"><span>function getRowsNum($res)//取得行号  </span></li>
<li class=""><span>{  </span></li>
<li class="alt">
<span>return $this-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>Driver-</span><span class="tag"><strong><font color="#006699">></font></strong></span><span> getRowsNum ($res);  </span>
</li>
<li class=""><span>}  </span></li>
<li class="alt"><span>}  </span></li>
<li class="">
<span>? </span><span class="tag"><strong><font color="#006699">></font></strong></span><span>  </span>
</li>
</ol>
Copy after login

希望以上介绍的PHP面向对象编程的相关知识对大家有所帮助。


source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template