


First introduction to PHP (4) PDO object configuration and use, first introduction to pdo_PHP tutorial
First introduction to PHP (4) PDO object configuration and use, first introduction to pdo
1. The concept of PDO
PDO is actually an abstraction layer of a database. Using PDO programming can easily change the database at any time in subsequent actual operations without changing the source code. The location of PDO is as shown below:
phptest","root","123");
This completes the initialization of the PDO object. The connected database is the phptest database of the mysql database. The username and password used are root and 123 respectively
If you write dsn information into the configuration file, use the following method:
$pdo = new PDO("uri:MysqlDbo.ini","root","123"); \dsn data is written in the MysqlDbo.ini file
3.2 Use of PDO objects
The member methods of PDO are as follows:
1) query($sql); //Used to execute query SQL statements. Return PDOStatement object
2) exec($sql); //Used to perform add, delete, and modify operations and return the number of affected rows;
3) setAttribute(); //Set a "database connection object" attribute.
4) fetchAll(); //Parse data
The following is an example:
The original data of the database is as follows:
1 php
2 //Connect to database
3 try {
4 $pdo = new PDO("mysql:host=localhost;dbname=phptest", "root", "20125202" );
5 }
6 catch (PDOException $e){
7 die("Database connection failed".$e->getMessage());
8 }
9 //Query statement
10 $sql = 'select * from students';
11 //Execute statements and parse data
12 echo 'id '.'____________'.'name'.'____________'.'sex'."
";
13 foreach ($pdo->query($sql) as $val){
14 echo $val['id'].'____________'.$val['name'].' ____________'.$val['sex']."
";
15 }
16 ?>
The effect is as shown below:
1 php
2 //Connect to database
3 try {
4 $pdo = new PDO("mysql:host=localhost;dbname=phptest", "root", "123" );
5 }
6 catch (PDOException $e){
7 die("Database connection failed".$e->getMessage());
8 }
9 //Insert statement
10 $sql = "insert into students values('20125203','tony','female')";
11 //Execute statements and parse data
12 $res = $pdo->exec($sql);
13 if ($res){
14 echo "Insertion successful!";
15 }
16 //Query results
17 $sql = 'select * from students';
18 echo 'id '.'____________'.'name'.'____________'.'sex'."
";
19 foreach ($pdo->query($sql) as $val){
20 echo $val['id'].'____________'.$val['name'].' ____________'.$val['sex']."
";
21 }
22 ?>
The effect is as shown below:
1 php
2 //Connect to database
3 try {
4 $pdo = new PDO("mysql:host=localhost;dbname=phptest", "root", "123" );
5 }
6 catch (PDOException $e){
7 die("Database connection failed".$e->getMessage());
8 }
9 //Insert statement
10 //$sql = "insert into students values('20125203','tony','female')";
11 //Modify the statement
12 $sql = "update students set sex='male' where id='20125203'";
13 //Execute statements and parse data
14 $res = $pdo->exec($sql);
15 if ($res){
16 echo "Modification successful!";
17 }
18 //Query results
19 $sql = 'select * from students';
20 echo ' id '.'____________'.'name'.'____________'.'sex'."
";
21 foreach ($pdo->query($sql) as $val){
22 echo $val['id'].'____________'.$val['name'].' ____________'.$val['sex']."
";
23 }
24 ?>
Modify data
The effect is as shown below:
1 php
2 //Connect to database
3 try {
4 $pdo = new PDO("mysql:host=localhost;dbname=phptest", "root", "20125202" );
5 }
6 catch (PDOException $e){
7 die("Database connection failed".$e->getMessage());
8 }
9 //Insert statement
10 //$sql = "insert into students values('20125203','tony','female')";
11 //Modify the statement
12 //$sql = "update students set sex='male' where id='20125203'";
13 //Delete statement
14 $sql = "delete from students where id='20125203'";
15 //Execute statements and parse data
16 $res = $pdo->exec($sql);
17 if ($res){
18 echo "Delete successfully!";
19 }
20 //Query results
21 $sql = 'select * from students';
22 echo 'id '.'____________'.'name'.'____________'.'sex'."
";
23 foreach ($pdo->query($sql) as $val){
24 echo $val['id'].'____________'.$val['name'].' ____________'.$val['sex']."
";
25 }
26 ?>
Delete data
The effect is as shown below:
The above is the basic usage of PDO and operations such as adding, deleting, checking and modifying.

APHPDependencyInjectionContainerisatoolthatmanagesclassdependencies,enhancingcodemodularity,testability,andmaintainability.Itactsasacentralhubforcreatingandinjectingdependencies,thusreducingtightcouplingandeasingunittesting.

Select DependencyInjection (DI) for large applications, ServiceLocator is suitable for small projects or prototypes. 1) DI improves the testability and modularity of the code through constructor injection. 2) ServiceLocator obtains services through center registration, which is convenient but may lead to an increase in code coupling.

PHPapplicationscanbeoptimizedforspeedandefficiencyby:1)enablingopcacheinphp.ini,2)usingpreparedstatementswithPDOfordatabasequeries,3)replacingloopswitharray_filterandarray_mapfordataprocessing,4)configuringNginxasareverseproxy,5)implementingcachingwi

PHPemailvalidationinvolvesthreesteps:1)Formatvalidationusingregularexpressionstochecktheemailformat;2)DNSvalidationtoensurethedomainhasavalidMXrecord;3)SMTPvalidation,themostthoroughmethod,whichchecksifthemailboxexistsbyconnectingtotheSMTPserver.Impl

TomakePHPapplicationsfaster,followthesesteps:1)UseOpcodeCachinglikeOPcachetostoreprecompiledscriptbytecode.2)MinimizeDatabaseQueriesbyusingquerycachingandefficientindexing.3)LeveragePHP7 Featuresforbettercodeefficiency.4)ImplementCachingStrategiessuc

ToimprovePHPapplicationspeed,followthesesteps:1)EnableopcodecachingwithAPCutoreducescriptexecutiontime.2)ImplementdatabasequerycachingusingPDOtominimizedatabasehits.3)UseHTTP/2tomultiplexrequestsandreduceconnectionoverhead.4)Limitsessionusagebyclosin

Dependency injection (DI) significantly improves the testability of PHP code by explicitly transitive dependencies. 1) DI decoupling classes and specific implementations make testing and maintenance more flexible. 2) Among the three types, the constructor injects explicit expression dependencies to keep the state consistent. 3) Use DI containers to manage complex dependencies to improve code quality and development efficiency.

DatabasequeryoptimizationinPHPinvolvesseveralstrategiestoenhanceperformance.1)Selectonlynecessarycolumnstoreducedatatransfer.2)Useindexingtospeedupdataretrieval.3)Implementquerycachingtostoreresultsoffrequentqueries.4)Utilizepreparedstatementsforeffi


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

Notepad++7.3.1
Easy-to-use and free code editor

WebStorm Mac version
Useful JavaScript development tools

SublimeText3 Chinese version
Chinese version, very easy to use

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.
