您现在的位置是:主页 > news > 做网站php的作用/网站自动推广软件免费

做网站php的作用/网站自动推广软件免费

admin2025/4/21 20:08:21news

简介做网站php的作用,网站自动推广软件免费,淘宝客网站必须备案吗,免费自学编程上图是使用pdo连接mysql时计算的连接时间,为什么会差距这么大 最终的问题就是在这里,连接使用127.0.0.1速度嗖嗖的 总结 在使用PDO连接数据库主机地址使用IP而不是域名,使用域名会让PDO在连接之前进行一次不必要的dns lookup,当…

做网站php的作用,网站自动推广软件免费,淘宝客网站必须备案吗,免费自学编程上图是使用pdo连接mysql时计算的连接时间,为什么会差距这么大 最终的问题就是在这里,连接使用127.0.0.1速度嗖嗖的 总结 在使用PDO连接数据库主机地址使用IP而不是域名,使用域名会让PDO在连接之前进行一次不必要的dns lookup,当…

在这里插入图片描述
在这里插入图片描述
上图是使用pdo连接mysql时计算的连接时间,为什么会差距这么大

最终的问题就是在这里,连接使用127.0.0.1速度嗖嗖的

在这里插入图片描述

总结

在使用PDO连接数据库主机地址使用IP而不是域名,使用域名会让PDO在连接之前进行一次不必要的dns lookup,当DNS缓存过于巨大的时候,这个问题可能会更严重。(即使是运行在本机,使用 127.0.0.1 而不是 localhost)

这是一份pdo的一点封装代码

<?php
/*** 数据库DAO -->>> 对数据库进行操作的类*/
class Db
{/*** 连接数据的地址* @var string*/CONST DRIVER_CLASS = 'mysql:host=127.0.0.1;dbname=ipone';/*** 数据库的用户名* @var string*/CONST USERNAME = 'root';/*** 数据库的密码* @var string*/CONST PASSWORD = 'root';/*** 数据库连接出错* @var string|array*/private $error = '没有异常';/*** 连接数据库驱动* @var PDO*/private $pdo;public function __construct(){try {$pStartTime=microtime(true);// 初始化执行数据库类// jdbc:mysql://localhost:3306/"$this->pdo = new PDO(self::DRIVER_CLASS, self::USERNAME, self::PASSWORD);$this->pdo->query('SET NAMES UTF8');$this->pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);$pEndTime=microtime(true);$res1=$pEndTime-$pStartTime;echo $res1;} catch (PDOException  $e) {// throw new \Exception($e->getMessage(), 500);return $e->getMessage();}}/*** 读操作 -->> 查询* @param  string $sql 查询sql* @return array       执行结果*/public function query($sql){try {$result = $this->pdo->query($sql);$data = [];foreach($result as $key => $value){$data[] = $value;}return (count($data) <= 1) ? $data[0] : $data ;} catch (PDOException  $e) {// throw new \Exception($e->getMessage(), 500);return $e->getMessage();}}/*** [call description]* @param  string $sql 查询的语句* @param  string $select_param 参数* @return [type]*/public function call($sql, $select_param = null){$stmt = $this->pdo->prepare($sql);if ($stmt->execute()) {if (isset($select_param)) {return $this->pdo->query($select_param)->fetchAll();} else {return $this->pdo->fetchAll();}return true;} else {return false;}}/*** 执行SQL* @param  string $sql 查询sql* @return array       执行结果*/public function execute($sql){try {return $this->pdo->exec($sql);} catch (PDOException  $e) {// throw new \Exception($e->getMessage(), 500);return $e->getMessage();}}//------------------//属性get | set 方法//------------------/*** 获取系统错信息*/public function getError(){return $this->error;}public function write($data){file_put_contents("log.txt",$data."\n",FILE_APPEND);}
}
// $db = new Db;