workday3~4
这两天算是把一个模块的功能做完了,功能是数据统计,即按输入的时间统计X小时各个服务器status的数量以及各个服务器的信息,学到了不少东西,为了避免忘记,先记录,有空再整理一下。
1.时间戳的问题
选择时区为中华人民共和国:date_default_timezone_set("PRC");
时间戳转换成标准时间格式:$standardTime = date("Y-m-d H:i:s",$time);
标准时间格式转换为时间戳:$time = strtotime($time)
2.用session来做php缓存
有些时候需要频繁读取数据库的数据,为了避免重复读取可以采用缓存
存 $_SESSION['user']= "caimuqing"
取 $_SESSION['user']
删除session里面的某些数据 unset($_SESSION['user'])
请教了下师兄,师兄建议用redis作为缓存,另外文件也是可以,有空研究一下
3.由于php版本的升级,所有对数据库的操作mysql都改为,mysqli
4.记录一下php连接数据库的方法
public static function connectDb(){
$con = mysqli_connect("localhost","root","basketball");
if(!$con){
die('could not connect ');
}
return $con;
}
5.创建表
public static function createTempTable()
{
self::dropTempTable();
$con = self::connectDb();
mysqli_select_db($con,self::$db_name);
$sqlCreate = "CREATE TABLE `tmp_check_success` (
`id` int NOT NULL AUTO_INCREMENT ,
PRIMARY KEY (`id`),
`count_success` varchar() NULL,
`count_1` varchar() NULL,
`count_11` varchar() NULL,
`count_3` varchar() NULL,
`count_5` varchar() NULL);";
mysqli_query($con,$sqlCreate);
}
6删除表
public static function dropTempTable(){
$con = self::connectDb();
mysqli_select_db($con,self::$db_name);
$sql = "DROP TABLE IF EXISTS tmp_check_success;";
mysqli_query($con,$sql);
}
7.简单查询
public static function getVasStatus(){
$con = self::connectDb();
mysqli_select_db($con,self::$db_name);
$allStatus = array(array());
$oneRow = array();
$sql = "SELECT * FROM `tmp_check_success`;";
$result = mysqli_query($con,$sql);
while($row = mysqli_fetch_array($result)){
$oneRow['id'] = $row[0];
$oneRow['count_success'] = $row[1];
$oneRow['count_1'] = $row[2];
$oneRow['count_11'] = $row[3];
$oneRow['count_3'] = $row[4];
$oneRow['count_5'] = $row[5];
$allStatus[] = $oneRow;
}
return $allStatus;
}
8.php往数组里面插入数据可以用
array_push($resultDetail,$oneRow);
$resultDetail是一个插入的目的地,$oneRow是带插入值
9.mvc模式的一些理解
就是model view controller
model是指业务逻辑层,基本所有对数据库的操作都会在这一层完成,可以构建class来完成
controller是指控制层,相当于遥控器,指挥完成相应的行为,其本身写的较为简洁,一切交给model来存取数据,可以调用class的方法,本身不写函数
view是视图层,就是展示控制层传送过来的数据
这三层可以分工独立完成的
10:Thinkphp是用smarty做模板引擎的,做完这个项目好好研究一下TP
workday3~4的更多相关文章
随机推荐
- Spark实战之读写HBase
1 配置 1.1 开发环境: HBase:hbase-1.0.0-cdh5.4.5.tar.gz Hadoop:hadoop-2.6.0-cdh5.4.5.tar.gz ZooKeeper:zooke ...
- php中for循环的应用1
for 循环是 PHP 中最复杂的循环结构.它的行为和 C 语言的相似.在PHP中使用的是执行相同的代码集的次数. for 循环的语法是: for (expr1; expr2; expr3)state ...
- Angular环境准备和Angular cli
Angular4.0来了,更小,更快,改动少 接下来为Angular4.0准备环境和学会使用Angular cli项目 1.环境准备: 1)在开始工作之前我们必须设置好开发环境 如果你的机器上还没有安 ...
- 关于Java解压文件的一些坑及经验分享(MALFORMED异常)
文章也已经同步到我的csdn博客: http://blog.csdn.net/u012881584/article/details/72615481 关于Java解压文件的一些坑及经验分享 就在本周, ...
- Android官方架构组件介绍之LifeCycle
Google 2017 I/O开发者大会于近日召开,在开发者大会上谷歌除了发布了Android O等一些新产品之外,也对Android代码的架构做出了一个官方的回应. Google 2017 I/O开 ...
- Cannot be cast to java.lang.Comparable异常
Set集合中的treeSet问题:cannot be cast to java.lang.Comparable: 原理: Set不保存重复的元素,与Collection类似,只是行为不同,Set是基于 ...
- C#基础篇--面向对象(类与对象)
1.类是什么? 类就相当于模板,就是把同一类的事物的共同特征进行的抽象. 类的创建和说明: 类是先根据一些具体的对象(实体的东西)来抽象出来的共同的特性,然后用代码来表示. 在类中,用数据表示事物的 ...
- JSP/Servlet Web 学习笔记 DayTwo
JSP指令 a)page指令 定义JSP文件中的全局属性.一个JSP页面可以包含多个page指令.除了Import以外,其他page指令定义的属性/值只能出现一次. 其详细语法为: <%page ...
- C/C++遍历目录下的所有文件(Windows/Linux篇,超详细)
本文可转载,转载请注明出处:http://www.cnblogs.com/collectionne/p/6815924.html. 前面的一篇文章我们讲了用Windows API遍历一个目录下的所有文 ...
- 一天搞定CSS(扩展):CSS Hack
做前端多年,虽然不是经常需要hack,但是我们经常会遇到各浏览器表现不一致的情况.基于此,某些情况我们会极不情愿的使用这个不太友好的方式来达到大家要求的页面表现.我个人是不太推荐使用hack的,要知道 ...