php操作mysqli經典模塊,PHP教程 MySQLi 函數

本文目錄一覽:

PHP使用mysqli擴展連接MySQL數據庫

1.面向對象的使用方式

$db

=

new

mysqli(‘localhost’,

‘root’,

‘123456’,

‘dbname’);

如果建立連接時未指定數據庫則選擇使用的數據庫,切換使用的數據庫

$db-select_db(‘dbname’);

$query

=

“SELECT

*

FROM

user

WHERE

uid=4″;

$result

=

$db-query($query);

$result_num

=

$result-num_rows;

$row

=

$result-fetch_assoc();

//返回一個關聯數組,可以通過$row[‘uid’]的方式取得值

$row

=

$result-fetch_row();

//返回一個列舉數組,可以通過$row[0]的方式取得值

$row

=

$result-fetch_array();

//返回一個混合數組,可以通過$row[‘uid’]和$row[0]兩種方式取得值

$row

=

$result-fetch_object();

//返回一個對象,可以通過$row-uid的方式取得值

$result-free();

//釋放結果集

$db-close();

//關閉一個數據庫連接,這不是必要的,因為腳本執行完畢時會自動關閉連接

當進行INSERT、UPDATE、DELETE操作時,使用$db-affected_rows查看影響行數

2.面向過程的使用方式

$db

=

mysqli_connect(‘localhost’,

‘root’,

‘123456’,

‘dbname’);

如果建立連接時未指定數據庫則選擇使用的數據庫,切換使用的數據庫

mysqli_select_db($db,

‘dbname’);

查詢數據庫

$query

=

“SELECT

*

FROM

user

WHERE

uid=4″;

$result

=

mysqli_query($db,

$query);

$result_num

=

mysqli_num_rows($result);

返回一行結果

$row

=

mysqli_fetch_assoc($result);

//返回一個關聯數組,可以通過$row[‘uid’]的方式取得值

$row

=

mysqli_fetch_row($result);

//返回一個列舉數組,可以通過$row[0]的方式取得值

$row

=

mysqli_fetch_array($result);

//返回一個混合數組,可以通過$row[‘uid’]和$row[0]兩種方式取得值

$row

=

mysqli_fetch_object($result);

//返回一個對象,可以通過$row-uid的方式取得值

斷開數據庫連接

mysqli_free_result($result);

//釋放結果集

mysqli_close($db);

//關閉一個數據庫連接,這不是必要的,因為腳本執行完畢時會自動關閉連接

當進行INSERT、UPDATE、DELETE操作時,使用mysqli_affected_rows()查看影響行數

info’>php中有mysqli類,是嗎?$mysqli->info

本文所述的是一個在PHP中以mysqli方式連接數據庫的一個數據庫類實例,該數據庫類是從一個PHP的CMS中整理出來的,可實現PHP連接數據庫類,MySQLi版,兼容PHP4,對於有針對性需要的朋友可根據此代碼進行優化和修改。

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

134

135

136

137

138

139

140

141

142

143

144

145

146

147

148

149

150

151

152

153

154

155

156

157

158

159

160

161

162

163

164

165

166

167

168

169

170

171

172

173

174

175

176

177

178

179

180

181

182

183

184

185

186

187

188

189

190

191

192

193

194

195

196

197

198

199

200

201

202

203

204

205

206

207

208

209

210

211

212

213

214

215

216

217

218

219

220

221

222

223

224

225

226

227

228

229

230

231

232

233

234

235

236

237

238

239

240

241

242

243

244

245

246

247

248

249

250

251

252

253

254

255

256

257

258

259

260

261

262

263

264

265

266

267

268

269

270

271

272

273

274

275

276

277

278

279

280

281

282

283

284

285

286

287

288

289

290

291

292

293

294

295

296

297

298

299

300

301

302

303

304

305

306

307

308

309

310

311

312

313

314

315

316

317

318

319

320

321

322

323

324

325

326

327

328

329

330

331

332

333

334

335

336

337

338

339

340

341

342

343

344

345

346

347

348

349

350

351

352

353

354

355

356

357

358

359

360

361

362

363

364

365

366

367

368

369

370

371

372

373

374

375

376

377

378

379

380

381

382

383

384

385

386

387

388

389

390

391

392

393

394

395

396

397

398

399

400

401

402

403

404

405

406

407

408

409

410

411

412

413

414

415

416

417

418

419

?php

#==================================================================================================

# Filename: /db/db_mysqli.php

# Note : 連接數據庫類,MySQLi版

#==================================================================================================

#[類庫sql]

class db_mysqli

{

var $query_count = 0;

var $host;

var $user;

var $pass;

var $data;

var $conn;

var $result;

var $prefix = “qingga

php怎麼用mysqli鏈接數據庫和輸出sql

一、mysql與mysqli的概念相關:

1、mysql與mysqli都是php方面的函數集,與

mysql數據庫

關聯不大。

2、在

php5

版本之前,一般是用php的

mysql函數

去驅動mysql數據庫的,比如mysql_query()的函數,屬於

面向過程

3、在php5版本以後,增加了mysqli的函數功能,某種意義上講,它是mysql系統函數的增強版,更穩定更高效更安全,與mysql_query()對應的有mysqli_query(),屬於面向對象,用對象的方式操作驅動mysql數據庫

二、mysql與mysqli的區別:

1、mysql是非持繼連接函數,mysql每次鏈接都會打開一個連接的進程。

2、mysqli是永遠連接函數,mysqli多次運行mysqli將使用同一連接進程,從而減少了服務器的開銷。mysqli封裝了諸如事務等一些高級操作,同時封裝了DB操作過程中的很多可用的方法。

三、mysql與mysqli的用法:

1:mysql(過程方式):

$conn

=

mysql_connect(‘

localhost

‘,

‘user’,

‘password’); //連接mysql數據庫

mysql_select_db

(‘data_base’);

//選擇數據庫$result

=

mysql_query(‘select

*

from

data_base’);//第二個可選參數,指定打開的連接$row

=

mysql_fetch_row(

$result

)

)

//只取一行數據echo

$row[0];

//輸出第一個字段的值

PS:mysqli以過程式的方式操作,有些函數必須指定資源,比如mysqli_query(資源標識,

SQL語句

),並且資源標識的參數是放在前面的,而mysql_query(SQL語句,’資源標識’)的資源標識是可選的,默認值是上一個打開的連接或資源。

2、mysqli(對象方式):

$conn

=

new

mysqli(‘localhost’,

‘user’,

‘password’,’data_base’);//要使用new

操作符

,最後一個參數是直接指定數據庫//假如構造時候不指定,那下一句需要$conn

select_db(‘data_base’)實現$result

=

$conn

query(

‘select

*

from

data_base’

);$row

=

$result

fetch_row();

//取一行數據echo

row[0];

//輸出第一個字段的值

使用new

mysqli(‘localhost’,

usenamer’,

‘password’,

‘databasename’);會報錯,提示如下:

Fatal

error:

Class

‘mysqli’

not

found

in

一般是mysqli是沒有開啟的,因為mysqli類不是

默認開啟

的,win下要改php.ini,去掉php_mysqli.dll前的;,linux下要把mysqli編譯進去。

四、mysql_connect()與mysqli_connect()

1.使用mysqli,可以把數據庫名稱當作參數傳給mysqli_connect()函數,也可以傳遞給mysqli的

構造函數

2.如果調用mysqli_query()或mysqli的對象查詢query()方法,則連接標識是必需的。

PHP中mysql和mysqli的區別

mysql和mysqli都是php操作mysql數據庫的擴展模塊,mysqli可以說是mysql的升級版。

建議不要再用mysql,而採用mysqli或者pdo,php7已經完全廢除了mysql

thinkphp怎麼使用mysqli擴展庫

這個在配置裏面是可以設置的,一般是與連接數據庫設置一起配置:

//數據庫配置信息

‘DB_TYPE’   = ‘mysql’, // 數據庫類型

‘DB_HOST’   = ‘localhost’, // 服務器地址

‘DB_NAME’   = ‘thinkphp’, // 數據庫名

‘DB_USER’   = ‘root’, // 用戶名

‘DB_PWD’    = ‘123456’, // 密碼

‘DB_PORT’   = 3306, // 端口

‘DB_PREFIX’ = ‘think_’, // 數據庫表前綴

‘DB_CHARSET’= ‘utf8’, // 字符集

‘DB_DEBUG’  =  TRUE, // 數據庫調試模式 開啟後可以記錄SQL日誌

其中數據庫類型可以設置為:mysqli

更多類型還有:

DB_TYPE設置

支持的                數據庫類型

mysql或mysqli    mysql  

pgsql                  pgsql  

sqlite                  sqlite  

mssql 或sqlsrv    sqlserver  

oracle                 oracle  

ibase                  ibase  

mongo                mongo  

PDO                    PDO支持的所有數據庫  

如何在php中擴展mysqli插件。

Mysqli是php5之後才有的功能,沒有開啟擴展的可以打開php.ini的配置文件

查找下面的語句:;extension=php_mysqli.dll將其修改為:extension=php_mysqli.dll即可。

相對於mysql有很多新的特性和優勢

(1)支持本地綁定、準備(prepare)等語法

(2)執行sql語句的錯誤代碼

(3)同時執行多個sql

(4)另外提供了面向對象的調用接口的方法。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/192156.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-11-30 15:15
下一篇 2024-11-30 15:15

相關推薦

  • Python中引入上一級目錄中函數

    Python中經常需要調用其他文件夾中的模塊或函數,其中一個常見的操作是引入上一級目錄中的函數。在此,我們將從多個角度詳細解釋如何在Python中引入上一級目錄的函數。 一、加入環…

    編程 2025-04-29
  • Python中capitalize函數的使用

    在Python的字符串操作中,capitalize函數常常被用到,這個函數可以使字符串中的第一個單詞首字母大寫,其餘字母小寫。在本文中,我們將從以下幾個方面對capitalize函…

    編程 2025-04-29
  • MQTT使用教程

    MQTT是一種輕量級的消息傳輸協議,適用於物聯網領域中的設備與雲端、設備與設備之間的數據傳輸。本文將介紹使用MQTT實現設備與雲端數據傳輸的方法和注意事項。 一、準備工作 在使用M…

    編程 2025-04-29
  • Python棧操作用法介紹

    如果你是一位Python開發工程師,那麼你必須掌握Python中的棧操作。在Python中,棧是一個容器,提供後進先出(LIFO)的原則。這篇文章將通過多個方面詳細地闡述Pytho…

    編程 2025-04-29
  • Python3.6.5下載安裝教程

    Python是一種面向對象、解釋型計算機程序語言。它是一門動態語言,因為它不會對程序員提前聲明變量類型,而是在變量第一次賦值時自動識別該變量的類型。 Python3.6.5是Pyt…

    編程 2025-04-29
  • Python中set函數的作用

    Python中set函數是一個有用的數據類型,可以被用於許多編程場景中。在這篇文章中,我們將學習Python中set函數的多個方面,從而深入了解這個函數在Python中的用途。 一…

    編程 2025-04-29
  • Deepin系統分區設置教程

    本教程將會詳細介紹Deepin系統如何進行分區設置,分享多種方式讓您了解如何規劃您的硬盤。 一、分區的基本知識 在進行Deepin系統分區設置之前,我們需要了解一些基本分區概念。 …

    編程 2025-04-29
  • 單片機打印函數

    單片機打印是指通過串口或並口將一些數據打印到終端設備上。在單片機應用中,打印非常重要。正確的打印數據可以讓我們知道單片機運行的狀態,方便我們進行調試;錯誤的打印數據可以幫助我們快速…

    編程 2025-04-29
  • 三角函數用英語怎麼說

    三角函數,即三角比函數,是指在一個銳角三角形中某一角的對邊、鄰邊之比。在數學中,三角函數包括正弦、餘弦、正切等,它們在數學、物理、工程和計算機等領域都得到了廣泛的應用。 一、正弦函…

    編程 2025-04-29
  • Python3定義函數參數類型

    Python是一門動態類型語言,不需要在定義變量時顯示的指定變量類型,但是Python3中提供了函數參數類型的聲明功能,在函數定義時明確定義參數類型。在函數的形參後面加上冒號(:)…

    編程 2025-04-29

發表回復

登錄後才能評論