框架的作用: 功能:操作数据库 模版引擎smarty 分析,应该具备什么功能? a:具体配置文件 ,配置文件的读取功能 b:数据库处理类 c:目录结构 先建一个includes文件放入,配置文件(config.php),配置类(conf.class.php),mysql数据库处理类(mysql.class.php),
框架的作用:
功能:操作数据库 模版引擎smarty
分析,应该具备什么功能?
a:具体配置文件 ,配置文件的读取功能
b:数据库处理类
c:目录结构
先建一个includes文件放入,配置文件(config.php),配置类(conf.class.php),mysql数据库处理类(mysql.class.php),网站初始化文件(init.php)
config.php 文件:
//网站的配置文件 $_cfg=array(); $_cfg['host']='localhost'; $_cfg['user']='root'; $_cfg['pwd']='root'; $_cfg['db']='xxzdb'; $_cfg['char']='utf8'; //$_cfg['']=''; //$_cfg['']='';
conf.class.php
//配置文件的读取类 //作用:读取config.php 并能返回某个配置选项的值 class Conf{ private static $ins = false; private $info = array(); final protected function __construct(){ require(ROOT .'includes/config.php'); $this->info = $_cfg; } //单例 public static function getIns(){ if(self::$ins === false){ self::$ins = new self(); } return self::$ins; } //读取配置文件的信息 public function __get($key){ if(array_key_exists($key,$this->info)){ return $this->info[$key]; } else { return null; } } public function __set($key,$value){ $this->info[$key] = $value; } //测试方法 public function printc(){ print_r($this->info); } } //调用 /* $conf = Conf::getIns(); $conf->template_dir='d:/www'; echo $conf->printc(); */
mysql.class.php
//require('conf.class.php'); //数据库的处理类 //抽象类 没有方法体 abstract class abs_db{ abstract protected function connect(); abstract protected function select_db($dbname=''); abstract protected function setChar(); abstract protected function query($sql); abstract protected function getAll($sql); abstract protected function getRow($sql); abstract protected function getOne($sql); abstract protected function error(); } class Mysql extends abs_db{ private static $ins = false; private $conn = false; private $conf = false; protected function __construct(){ $this->conf = Conf::getIns(); $this->connect(); $this->select_db(); $this->setChar(); } public static function getIns(){ if(self::$ins === false){ self::$ins= new self(); } return self::$ins; } //创建连接 protected function connect(){ $this->conn = mysql_connect($this->conf->host,$this->conf->user,$this->conf->pwd); if(!$this->conn){ $err = new Exception('连接失败'); throw $err; } } //选择数据库 protected function select_db($dbname=''){ if($dbname == ''){ $sql='use '.$this->conf->db; $this->query($sql); } } //设置字符集 protected function setChar(){ $sql='set names '.$this->conf->char; $this->query($sql); } //执行sql语句 public function query($sql){ return mysql_query($sql,$this->conn); } //取回所有行 public function getAll($sql){ $rs = $this->query($sql); $list=array(); while($row = mysql_fetch_assoc($rs)){ $list[] = $row; } return $list; } //取回一行 public function getRow($sql){ $rs = $this->query($sql); return mysql_fetch_assoc($rs); } public function getOne($sql){ } public function error(){ print_r(mysql_error($this->conn)); } //关闭资源 public function __destruct(){ } } /* $db = Mysql::getIns(); print_r($db); $sql="select * from art limit 5"; print_r($db->getAll($sql)); */
init.php
//网站的初始化文件 /** 魔术方法 __FILE__ 当前绝对路径 文件作用: 负责当前网站的根目录 引入所以页面都需要的文件 */ //ROOT 代表网站的跟路径 define('ROOT',str_replace('\\','/',str_replace('includes\init.php','',__FILE__))); require(ROOT .'includes/conf.class.php'); require(ROOT .'includes/mysql.class.php'); //echo ROOT;

php把负数转为正整数的方法:1、使用abs()函数将负数转为正数,使用intval()函数对正数取整,转为正整数,语法“intval(abs($number))”;2、利用“~”位运算符将负数取反加一,语法“~$number + 1”。

实现方法:1、使用“sleep(延迟秒数)”语句,可延迟执行函数若干秒;2、使用“time_nanosleep(延迟秒数,延迟纳秒数)”语句,可延迟执行函数若干秒和纳秒;3、使用“time_sleep_until(time()+7)”语句。

php字符串有下标。在PHP中,下标不仅可以应用于数组和对象,还可应用于字符串,利用字符串的下标和中括号“[]”可以访问指定索引位置的字符,并对该字符进行读写,语法“字符串名[下标值]”;字符串的下标值(索引值)只能是整数类型,起始值为0。

php除以100保留两位小数的方法:1、利用“/”运算符进行除法运算,语法“数值 / 100”;2、使用“number_format(除法结果, 2)”或“sprintf("%.2f",除法结果)”语句进行四舍五入的处理值,并保留两位小数。

在php中,可以使用substr()函数来读取字符串后几个字符,只需要将该函数的第二个参数设置为负值,第三个参数省略即可;语法为“substr(字符串,-n)”,表示读取从字符串结尾处向前数第n个字符开始,直到字符串结尾的全部字符。

判断方法:1、使用“strtotime("年-月-日")”语句将给定的年月日转换为时间戳格式;2、用“date("z",时间戳)+1”语句计算指定时间戳是一年的第几天。date()返回的天数是从0开始计算的,因此真实天数需要在此基础上加1。

方法:1、用“str_replace(" ","其他字符",$str)”语句,可将nbsp符替换为其他字符;2、用“preg_replace("/(\s|\ \;||\xc2\xa0)/","其他字符",$str)”语句。

查找方法:1、用strpos(),语法“strpos("字符串值","查找子串")+1”;2、用stripos(),语法“strpos("字符串值","查找子串")+1”。因为字符串是从0开始计数的,因此两个函数获取的位置需要进行加1处理。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

SublimeText3 Linux新版
SublimeText3 Linux最新版

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),