导航:首页 > 编程语言 > php面向对象练习题

php面向对象练习题

发布时间:2023-07-18 13:05:17

⑴ 综合应用数据库知识和用面向对象编程技术在php程序中创建出学生类

PHP使用面向对象的编程方式来编写数据库操作类
步骤1:创建一个PHP的页面“config.php”定义数据库相关的参数
<?php // config.php
define(?DB_USER?, "username");
define(?DB_PASSWORD?, "password");
define(?DB_DATABASE?, "database name");
define(?DB_SERVER?, "ip address of database server");
?>
第2步:创建一个PHP的类,用于连接数据库,命名为“db_connect.php”
<?php // db_connnect.php
class DB_Connect {
private $con;
// constructor
function __construct() {
// connecting to database
$this->con = $this->connect();
}
//Function to connect with database
private function connect() {
// import database connection variables
require_once __DIR__.?/config.php?;
try {
$conn = new PDO(?mysql:host=?.DB_SERVER .?;
dbname=?.DB_DATABASE, DB_USER, DB_PASSWORD);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
echo ?ERROR: ? . $e->getMessage();
}
return $conn;
}
public function getDbConnection(){
return $this->con;
}
}
?>
第3步:创建一个类,它包含了所有的功能,为您实现SQL查询,命名为“db_functions.php”
调用里面的函数进行SQL查询、以促进可重用性和可维护性
<?php // db_functions.php
class DB_Functions {
private $con;
// constructor
function __construct() {
require_once __DIR__.?/db_connect.php?;
// connecting to database
$db = new DB_Connect();
$this->con = $db->getDbConnection();
}
public function selectUser($id) {
try {
$stmt = $this->con->prepare(?SQL语句?);
$params = array(?:id? => $id);
$stmt->execute($params);
return $stmt;
} catch(PDOException $e) {
echo ?ERROR: ? . $e->getMessage();
}
}
public function otherSQLfunction($parameter) {
// other sql code
}
}
第4步:最后,在你其他的PHP文件里面只需要简单地调用“db_functions.php”的方法
<?php
require_once __DIR__.?/db_functions.php?;
$db = new DB_Functions();
$result = $db->selectUser($id);
// other code
?>

⑵ PHP练习题

1、PHP语言标记是(B )。

A、<……>

B、<?php……?>

C、?…………?

D、/*………*/

2、PHP代码要想以“<?”为开头,以“?>”为结束,需要启用配置文件中的(A )选项。

A、short_open_tag

B、asp_tags

C、allow_call_time_pass_reference

D、safe_mode_gid

4、PHP语句以什么符号结束( C )

A、 .

B、 :

C、 ;

D、无需任何符号,换行就行

5、PHP中那些字符被认为是间隔字符(空白符)( A )。

A、空格

B、下划线字符

C、制表符

D、回车符

⑶ 一个很简单的PHP面向对象 问题

如果不是写在类里 你这个就是一个函数
如果写在类里 你这个就是一个类里的一个方法
function_get()括号里如果没有参数就不要填 直接调用这个函数可以了
括号中间的是参数,意思就是你写这个函数的时候需要外部调入的数据才能完成
function __set($name,$value) 不一定是类里的属性 不是很熟悉对类 是外部传入的参数 比如
$a=1;$b=8;
function _set($a,$b)
{
return $a+$b;
}
$c= _set($a,$b);
这个时候$c就是9
不知道你看懂了没 呵呵

⑷ 一个关于PHP面向过程和面向对象的问题

面向对象,是把一些常用的操作进行类封装起来,方便调用,需要用的地方,调用一下即可,这样,开发方便,维护也方便!修改这个封装的类,即可达到修改全站的目的!

面向过程,是在每一个地方都使用单独的代码进行操作,这样开发的时候重复累赘,维护的时候也很累,你修改了哪里,就只在哪里起作用!

比如,初学php,最基本的连接数据库和查询数据库都会这样写:

<?php
$Con=mysql_connect(.........);
mysql_query('setnamesutf8');
mysql_select_db(....);

$query=mysql_query($sql);
while($Rs=mysql_fetch_aray($query)){

echo$Rs[0];
}

等等这样,操作10次数据库,就写10次这样的代码!

而如果封装一个类,意义就不同了!

<?php
classmysql{

var$Con;
var$table;
publicConnEct($local,$root,$pass,$base,$code){

$this->Con=mysql_connect($local,$root,$pass);
mysql_query('setnames'.$code);
mysql_select_db($base);


}

publicTab($Table){


$this->table=$Table;
return$this;
}

publicSelect(){

$rs=mysql_query('select*from'.$this->table)
while($Rs=mysql_fetch_array($rs){
$Rule[]=$Rs;
}

return$Rule;
}
}

把上面的代码保存成一个文件,比如是mysql.php,在需要操作数据库的地方引入这个文件,那么要查询数据库的一个表就非常方便了!

<?php
include_once'mysql.php';
$Mysql=newmysql;//实例化一个类;
$Mysql->ConnEct('localhost','root',123456,'table','utf8');//连接数据库
$Resul=$Mysql->Tab('user')->Select();//查询user表,并返回数组结果
print_r($Resul);//打印这个数组

以上个人见解,仅供参考

⑸ 请教PHP面向对象编程

楼上给的例子,是正确的,只不过声明访问权限的时候用的是PHP4的语法。
修正一下:
-------------------------------------------------------------------

<?php
class A
{
public static $name="张三";
}

class B
{
public static $name="李四";

}

class C
{
public $a;
public $b;

public function __construct()
{
$this->a=new A;
$this->b=new B;
}

public function outputValue()
{
printf("a::name=%s,b::name=%s\n",$this->a->name,$this->b->name);
}
}

$c=new C;
$c->outputValue();

⑹ php面向对象面试题

其实这个问题很简单啦,两分钟就可以请清楚啦,我在这里先说一下思想;
首先你得写一个类表示人,如:person类;
小刘、小张、MrJosnon、MrJohn等都是这个person类的一个实例;

并且人力资源部问问题这是这个person类当中的一个方法,然后每个人都可以继承自person类,然后又有各自己相关方法等;

然后你得写一个国家类,如:Country类,然后中国是这个国家的一个具体实例;

然后你得写一个城市类,如:City类;然后上海是City类的一个实例;

同样,你得写一个公司类,如:Company类,然后那两个公司又是Company类的两个实例,并且你还得写一个部门类,如:Depart类,然后人力资源部是部门的一个实例;

上面只是这个问题的中文描述,你可以参考一下;

阅读全文

与php面向对象练习题相关的资料

热点内容
婴儿pdf 浏览:767
钉钉网络加密在哪里设置 浏览:727
如何把安卓系统装到sd卡 浏览:735
python字典获取值方法 浏览:244
android手机安装失败 浏览:28
云计算没有服务器 浏览:67
怎么显示android的APP 浏览:121
c编译器怎么删除空格 浏览:695
php自动释放内存 浏览:220
golang编译库 浏览:794
oracle数据字符串加密 浏览:603
研究生去上海当程序员 浏览:90
u8电脑服务器连接失败怎么解决 浏览:569
bat脚本创建日期命名文件夹 浏览:104
将图片转换为pdf格式 浏览:980
java中形参 浏览:83
枚举类型编译器 浏览:519
oraclejava包 浏览:569
手机定位手机怎么定位安卓 浏览:523
在哪个app买欧莱雅最便宜 浏览:495