Home >Backend Development >PHP Tutorial >My lazy ass is back! -PDO, lazy!-PDO_PHP tutorial

My lazy ass is back! -PDO, lazy!-PDO_PHP tutorial

WBOY
WBOYOriginal
2016-07-12 09:03:19906browse

My lazy ass is back! -PDO, lazy egg!-PDO

 hi

It’s been a few days, my foot has been injured for a week. After playing for so long, I realized that for young people, or more specifically, for me, the most uncomfortable thing about being injured is not the physical pain at the moment of injury, nor the subsequent psychological burden, nor the loneliness and helplessness of being alone in a foreign country. The feeling of help; what hurts the most is the fighting spirit, the depressed will that cannot be raised after being injured, the rotten spirit of breaking a jar, or the inexplicable inner fear of the essence of the problem.

Fortunately, even though I haven’t moved for so many days, the double-edged sword of fear still stings my remaining sense of responsibility and guilt. I can still continue to blog and stay alive~~

Try to take one class a day and achieve something before going home. Let’s work hard together!

New people, new atmosphere, new courses~

1. PDO

1. Introduction to PDO

1.1 PDO

PHP Data Object, database access abstraction layer, unifies the access interfaces of various databases.

Improve the portability and maintainability between databases - by improving the level of abstraction and unifying the access interface.

No matter what database is used, it can be written using the same API.

--Features

Coding consistency;

Flexibility;

High performance; (written in c language, compiled into PHP)

OOP.

--Supported libraries

PDO is just an abstract interface, and the operation of this interface also needs to support various libraries.

Here we are using PHP language, so PDO MySQL is used.

1.2 Configuration and Activation

Configure in PHP configuration file:

Enable php_pdo.dll expansion -> Enable the corresponding database expansion php_pdo_mysql.dll -> phpinfo and take a look.

Of course different environments (integrations) are different, just go to Baidu on your own.

1.3 Connect to database

--Method

Parameter form;

URI form;

Configuration file form. php.ini

--Chestnut

/*
* PDO implements connection to database
*/

//Parameter form
try {
$dsn='mysql:localhost;dbname=imooc_pdo';//Data source
$username= 'root';
$passwd='';
$pdo=new PDO($dsn, $username, $passwd); //pdo object
var_dump($pdo);
}catch (PDOException $e){ //Get error message
echo $e->getMessage();
}

//URI form
try {
$dsn='uri:C:wampwwwPDO_learningdsn.txt';//The difference lies in data source acquisition
$username='root ';
$passwd='';
$pdo=new PDO($dsn, $username, $passwd);
var_dump($pdo);
}catch (PDOException $e){ //Get error message
echo $e->getMessage();
}

//In configuration file format, first write pdo.dsn.imooc="mysql in php.ini :host=localhost;dbname=imooc_pdo"
try {
$dsn='imooc';//The difference lies in the data source acquisition
$username='root';
$passwd='';
$pdo=new PDO($dsn, $username, $passwd);
var_dump($pdo);
}catch (PDOException $e){ //Get error Message
echo $e->getMessage();
}

The basic process is to write the parameters and then create a new PDO object. The parameters include data source information, user name, and password.

Data source: data source name: drive name: host; database; (the syntax here is different for various databases, check yourself).

As you can see, the difference between the three forms lies in the way of obtaining the data source.

It is recommended to connect via parameters, of course, it’s up to you.

2. Use of PDO objects (add, delete, modify and check)

2.1 exec()

Execute a SQL statement and return the number of affected rows. If there are no affected records, it returns 0.

Note that exec is not useful for select.

--Lizi: Create table & add

/*
* Use case of exec()
*/

$pdo=new PDO('mysql:host=localhost;dbname =imooc','root','');
$sql=<< CREATE TABLE IF NOT EXISTS user(
id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(20) NOT NULL UNIQUE,
password CHAR(32) NOT NULL,
email VARCHAR(30) NOT NULL
);
EOF;
$pdo- >exec('use imooc_pdo');
$result0=$pdo->exec($sql);
var_dump($result0);

$insert='insert user(username,password,email) values("Kinga","'.md5('king').'","shit@shit.com")';
$result1 =$pdo->exec($insert);
var_dump($result1);

However, if executed repeatedly, false will be returned. (? I don’t know why, can anyone tell me)

The same deletion is also possible, but please note that select cannot be executed with exec .

Just judge the result from the return result of exec every time.

------------------------------------------------- -----------------------

Oops, I really need a fight. I watched two episodes of the imperial court variety show and the time flew by. . Come on tomorrow.

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/1081946.htmlTechArticleMy lazy ass is back! -PDO, lazy ass! -PDO hi It’s been a few days, my foot has been injured for a week. After playing for so long, I realized that for young people, or more specifically, for me, it hurts the most...
Statement:
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