真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

php類數(shù)據(jù)庫操作數(shù)據(jù)庫 php數(shù)據(jù)庫編程

最好用的PHP數(shù)據(jù)庫操作類-ezSQL

ezSQL是一個非常好用的PHP數(shù)據(jù)庫操作類 著名的開源博客WordPress的數(shù)據(jù)庫操作就使用了ezSQL的MySQL部分 該數(shù)據(jù)庫操作類支持幾乎所有主流的數(shù)據(jù)庫 如 PHP PDO mySQL Oracle InterBase/FireBird PostgreSQL SQLite以及MS SQL等 ezSQL具有很強的調(diào)試功能 可以快速地查看SQL代碼的執(zhí)行情況 使用ezSQL 可以為我們節(jié)省開發(fā)時間 簡化代碼并提高運行效率

在同安等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站制作、網(wǎng)站建設(shè) 網(wǎng)站設(shè)計制作按需網(wǎng)站建設(shè),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),全網(wǎng)整合營銷推廣,外貿(mào)營銷網(wǎng)站建設(shè),同安網(wǎng)站建設(shè)費用合理。

ezSQL的優(yōu)點就不用多說了 它小巧 快速 簡單 易用 并且開源 還有就是安全 你沒想到的細(xì)節(jié)它都為你考慮了 你只需要在你的腳本開頭包含相關(guān)的PHP文件 然后你就可以使用更好用的一套ezSQL函數(shù)來代替標(biāo)準(zhǔn)的PHP數(shù)據(jù)庫操作函數(shù)

下面是ezSQL中一些主要的函數(shù)

$db get_results 從數(shù)據(jù)庫中讀取數(shù)據(jù)集

$db get_row 從數(shù)據(jù)庫中讀取一行數(shù)據(jù)

$db get_col 從數(shù)據(jù)庫中讀取一列指定的數(shù)據(jù)集

$db get_var 從數(shù)據(jù)庫的數(shù)據(jù)集中讀取一個值

$db query 執(zhí)行一條SQL語句

$db debug 打印最后執(zhí)行的SQL語句及其返回的結(jié)果

$db vardump 打印變量的結(jié)構(gòu)及其內(nèi)容

$db select 選擇一個新數(shù)據(jù)庫

$db get_col_info 獲取列的信息

$db hide_errors 隱藏錯誤

$db show_errors 顯示錯誤

ezSQL的使用方法很簡單 首先下載ezSQL源代碼 然后將ez_sql_core php文件和ez_sql_mysql php文件(這里以mySQL為例)放到與你的腳本文件相同的目錄下 然后將下面的代碼添加到你的腳本文件的最前面 這樣就可以正常使用ezSQL了

?php// 包含ezSQL的核心文件include_once?"ez_sql_core php";// 包含ezSQL具體的數(shù)據(jù)庫文件 這里以mySQL為例include_once?"ez_sql_mysql php";// 初始化數(shù)據(jù)庫對象并建立數(shù)據(jù)庫連接$db?=?new?ezSQL_mysql( db_user db_password db_name db_host );?

下面是ezSQL中一些主要函數(shù)的應(yīng)用實例 這些代碼均來自于ezSQL的官方幫助文檔

實例一

// Select multiple records from the database and print them out $users?=?$db get_results("SELECT name email FROM users");foreach?(?$users?as?$user?)?{? ? ? ? ? ??// Access data using object syntax? ? ? ? ? ??echo?$user name;? ? ? ? ? ??echo?$user email;}

實例二

// Get one row from the database and print it out $user?=?$db get_row("SELECT name email FROM users WHERE id = ");echo?$user name;echo?$user email;

實例三

// Get one variable from the database and print it out $var?=?$db get_var("SELECT count(*) FROM users");echo?$var;

實例四

// Insert into the database$db query("INSERT INTO users (id name email) VALUES (NULL justin jv@foo )");

實例五

// Update the database$db query("UPDATE users SET name = Justin WHERE id = )");

實例六

// Display last query and all associated results$db debug();

實例七

// Display the structure and contents of any result(s) or any variable$results?=?$db get_results("SELECT name email FROM users");$db vardump($results);

實例八

// Get one column (based on column index) and print it out $names?=?$db get_col("SELECT name email FROM users" )foreach?(?$names?as?$name?)?{? ??echo?$name;}

實例九

// Same as above ‘but quicker’foreach?(?$db get_col("SELECT name email FROM users" )?as?$name?)?{? ??echo?$name;}

實例十

lishixinzhi/Article/program/PHP/201311/21297

PHP用戶類的一個方法怎樣調(diào)用數(shù)據(jù)庫操作類

直接調(diào)用就行了,不過可能你需要引用文件,以下是例子

//文件conn.php,用于連接數(shù)據(jù)庫

class

DB_Conn

{

}

//文件

db.php,

用于數(shù)據(jù)庫操作,這個類必然需要使用數(shù)據(jù)庫連接對象,因此引用conn.php

require_once

conn.php;

class

DB

{

}

//文件user.php

require_once

'db.php';

class

User

{

public

function

getUserById($id)

{

$conn

=

new

Db_Conn();

$db

=

new

Db();

}

}以上只是示意,如果文件不在一個目錄下記得修改路徑。而且,一般來說數(shù)據(jù)庫對象應(yīng)該包含連接數(shù)據(jù)庫和數(shù)據(jù)操作的全部功能,不需要分別寫在兩個類里面。我覺得你對面向?qū)ο蟮睦斫膺€很淺薄,需要進(jìn)一步累積經(jīng)驗。

PHP數(shù)據(jù)庫操作之基于Mysqli的數(shù)據(jù)庫操作類庫

此類庫簡單、易用,便于你自己修改和對功能的改善,能解決大部分

PHP

項目中執(zhí)行的

SQL

操作。

初步工作

首先,請大家下載這個類庫

M.class.php 再下載一個

Mysqli

連接數(shù)據(jù)庫的類庫

MysqliDb.class.php(打包下載地址)

新建一個

includes

的文件夾,將下載下來的兩個

class

文件,放進(jìn)去。

然后,請你在項目下創(chuàng)建一個

test.php

文件。注:UTF-8

文件格式

請先根據(jù)你機(jī)器的情況,填充以下代碼,用于連接數(shù)據(jù)庫:

復(fù)制代碼

代碼如下:

header('Content-Type:text/html;Charset=utf-8');

define('ROOT_PATH',

dirname(__FILE__));

define('DB_HOST',

'localhost');

//數(shù)據(jù)庫服務(wù)器地址

define('DB_USER',

'root');

//數(shù)據(jù)庫用戶名

define('DB_PWD',

'×××');//數(shù)據(jù)庫密碼

define('DB_NAME',

'×××');

//數(shù)據(jù)庫名稱

define('DB_PORT',

'3306');

//數(shù)據(jù)庫端口

function

__autoload($className)

{

require_once

ROOT_PATH

.

'/includes/'.

ucfirst($className)

.'.class.php';

//自動加載

class

文件

}

好了,上面的這些操作都是初步工作,下面正式進(jìn)入類庫的講解。

類庫講解

首先,我們得實例化

M.class.php,實例化很簡單:

復(fù)制代碼

代碼如下:

$m

=

new

M();

//這步操作代表

M.class.php

中的所有功能都封裝在了變量

$m

注:

1、M類庫中的方法參數(shù)說明,請到

M.class.php

文件中看詳細(xì)的注釋,這里不再進(jìn)行敘述。建議在學(xué)習(xí)的時候,對照著看下文件中的參數(shù)即注釋。

2、講解代碼中用到的數(shù)據(jù)庫結(jié)構(gòu)為:

復(fù)制代碼

代碼如下:

CREATE

TABLE

`user`

(

`id`

int(8)

unsigned

NOT

NULL

auto_increment,

`name`

varchar(50)

default

NULL,

`email`

varchar(100)

default

NULL,

`age`

smallint(3)

default

NULL,

`class_id`

int(8)

default

NULL,

`commit_time`

int(10)

default

NULL,

PRIMARY

KEY

(`id`),

KEY

`name`

(`name`)

)

ENGINE=MyISAM

DEFAULT

CHARSET=utf8

復(fù)制代碼

代碼如下:

CREATE

TABLE

`class`

(

`class_id`

int(8)

NOT

NULL

auto_increment,

`class_name`

varchar(100)

default

NULL,

PRIMARY

KEY

(`class_id`)

)

ENGINE=InnoDB

DEFAULT

CHARSET=utf8

并添加一條測試數(shù)據(jù)。

3、M類庫中,大部分方法都分兩中類型,即:SQL方法;拼接方法,具體在實例中可以看出

4、以下稱述中的

M

M.class.php

文件

方法1、Insert()

添加數(shù)據(jù)

Insert

方法的全部使用案例如下:

復(fù)制代碼

代碼如下:

$m-Insert("user",

null,

array('焦焦',

'liruxing1715@sina點抗 ',

'23',

time()));

//

拼接方法:往`user`表中添加一條數(shù)據(jù),返回值為數(shù)據(jù)庫影響的行數(shù)

$m-Insert("user",

null,

array('焦焦',

'liruxing1715@sina點抗 ',

'23',

time()),

true);

//

功能同上,返回

last_insert_id(插入的增長id)

$m-Insert("INSERT

INTO

`user`

(`name`,

`email`,

`age`,

`commit_time`)

VALUES

('張小花',

'zhangxiaohua@sina點抗 點吸煙 ',

'22',

'".time()."')");

//SQL方法,返回值為數(shù)據(jù)庫影響的行數(shù)

$m-Insert("INSERT

INTO

`user`

(`name`,

`email`,

`age`,

`commit_time`)

VALUES

('張小花',

'zhangxiaohua@sina點抗 點吸煙 ',

'22',

'".time()."')",

true);

//

同上,返回

last_insert_id

注:Insert

方法中的第二個參數(shù)若為null,可自動獲得插入表除

auto_increment

字段之外的所有字段,詳情請看M源文件;若要返回值為最后插入的

ID,那么請設(shè)置

Insert

方法的最后一個參數(shù)為

true(默認(rèn)是false);

方法2、Update()

修改數(shù)據(jù)

update

方法的全部使用案例如下:

復(fù)制代碼

代碼如下:

$m-Update("user",

array('name'='李茹茹',

'age'=24),

"id=1");

//拼接方法,修改id為1的數(shù)據(jù)的名稱為“李茹茹”;年齡為“24”,其方法的返回值為受影響的行數(shù)

$m-Update("UPDATE

`user`

SET

`name`='李茹茹',

`age`=24

WHERE

id

=

1");

//SQL

用法,功能同上

方法3、Del()

刪除數(shù)據(jù)

Del

方法的全部使用案例如下:

復(fù)制代碼

代碼如下:

$m-Del('user',

'id=3');

//拼接方法:刪除`user`表中

id

為3的數(shù)據(jù),返回受影響的行數(shù)

$m-Del("DELETE

FROM

`user`

WHERE

id=4");

//SQL方法:刪除`user`表中

id

為4的數(shù)據(jù),返回受影響的行數(shù)

$m-Del("DELETE

FROM

`user`

WHERE

id

in

(10,

11,

12)");

//SQL方法:刪除多條數(shù)據(jù),刪除`user`表中

id

10、11、12

的數(shù)據(jù),返回受影響的行數(shù)

方法4、Total()

獲取記錄數(shù),返回值都為int

Del

方法的全部使用案例如下:

復(fù)制代碼

代碼如下:

$m-Total('user');

//拼接方法:返回

`user`表中的記錄數(shù),無條件

$m-Total('user',

'id1');

//拼接方法:返回

`user`表中

id

大于1的記錄數(shù),有條件

$m-Total("SELECT

COUNT(*)

AS

total

FROM

`user`");

//SQL方法,注:使用SQL方法,語句中必須使用

"AS

total",否則會報錯

方法5、IsExists()

檢查數(shù)據(jù)是否存在,返回值為boolean

復(fù)制代碼

代碼如下:

$m-IsExists('user',

"`name`='焦焦'");

//拼接方法:返回`user`表中是否存在`name`為“焦焦”的數(shù)據(jù),返回true,若不存在,返回false

方法6、InsertId()

獲取表下一個添加的自動增長id,注意,這里不進(jìn)行添加操作,只是獲取下一個增長id

復(fù)制代碼

代碼如下:

echo

$m-InsertId('user');

//獲取`user`

表下一個添加的自動增長id

方法7、GetRow()

返回單條數(shù)據(jù),返回值為一維數(shù)組

GetRow

方法的全部使用案例如下:

復(fù)制代碼

代碼如下:

$data

=

$m-GetRow("SELECT

`name`,email

FROM

`user`

WHERE

id=1");

//SQL方法,返回一維數(shù)組,例如:Array

(

[name]

=

焦焦

[email]

=

liruxing1715@sina點抗

)

$data

=

$m-GetRow("SELECT

u.`name`,

u.email,

c.class_name

FROM

`user`

u,

`class`

c

WHERE

u.class_id=c.class_id

AND

u.id=1");

//SQL方法,多表查詢

$data

=

$m-GetRow('user',

'`name`,email',

"id=1");

//拼接方法

$data

=

$m-GetRow('user

as

u,`class`

c',

'u.`name`,u.email,c.class_name',

"u.id=1

AND

u.class_id=c.class_id");

//拼接方法,多表查詢

$data

=

$m-GetRow("SELECT

`name`,email

FROM

`user`");

//如果沒有指定條件應(yīng)該是顯示全部信息,但是在此方法中將默認(rèn)顯示第一條(不推薦這么使用!?。。?/p>

$data

是查詢出來的一維數(shù)組。

方法8、GetOne()

返回單個數(shù)據(jù)

GetOne

方法的全部使用案例如下:

復(fù)制代碼

代碼如下:

$name

=

$m-GetOne("SELECT

`name`

FROM

`user`

WHERE

id=1");

//SQL方法,返回一個字符串,例如:焦焦

$name

=

$m-GetOne("user",

"name",

"id=1");

//拼接方法,返回一個字符串,例如:焦焦

方法9、FetchAll()

返回所有記錄

復(fù)制代碼

代碼如下:

$data

=

$m-FetchAll("user");

//返回`user`表中的所有記錄,以二維數(shù)組的形式

$data

=

$m-FetchAll("SELECT

*

FROM

`user`");

//SQL

方法,功能和返回值同上

$data

=

$m-FetchAll("user",

"name,email",

"id1",

'id

DESC',

'2');

//返回兩條id1的數(shù)據(jù),只顯示name,email,并且以id

為倒序排序。注:請注意該方法的最后一個參數(shù)也可以為'0,2',目的是為分頁準(zhǔn)備的,如果第一頁為'0,2'的話,那么第二頁就是'2,2'

//該方法也支持聯(lián)表查詢和多表查詢,下面以聯(lián)表查詢?yōu)槔?/p>

$data

=

$m-FetchAll("`user`

as

u

LEFT

JOIN

`class`

as

c

ON

u.class_id=c.class_id",

"u.`name`,u.email,

c.class_name",

"u.id=1");

//注意:該拼接方法中,ON

添加的位置

注:對于該

FetchAll

方法,后續(xù)我會寫一篇使用該方法進(jìn)行完美分頁的文章?。≌堦P(guān)注。

方法10、MultiQuery()

執(zhí)行多條SQL語句

復(fù)制代碼

代碼如下:

$sql

=

"INSERT

INTO

user

(`name`,email,

age,

class_id,

commit_time)

VALUES

('賈花花',

'jiahuahua@sina點抗 點吸煙 ',

'22',

'1',

'".time()."')";

//添加一個名叫“賈花花”的學(xué)生信息

$sql

.=

";DELETE

FROM

`user`

WHERE

`name`='焦焦'";

//刪除一條名叫“焦焦”的學(xué)生信息

//解釋:$sql

是多條

SQL

以英文;(分號)拼接起來的

$data

=

$m-MultiQuery($sql);

//返回為true,代表執(zhí)行成功;為false,代表執(zhí)行失敗

類庫講解完畢

到此該類庫的全部功能就講解完畢,希望你能多看看M文件,了解其內(nèi)部運行的機(jī)制。M

文件不會存在執(zhí)行緩慢情況,請大家放心使用。

如果在使用過程中出現(xiàn)

SQL

拼接錯誤,類庫會報出友善的錯誤提示。

有問題請留言,歡迎大家的批評和建議,加油!學(xué)習(xí)好運。


新聞標(biāo)題:php類數(shù)據(jù)庫操作數(shù)據(jù)庫 php數(shù)據(jù)庫編程
文章轉(zhuǎn)載:http://weahome.cn/article/ddjpgod.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部