php获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法

php 获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法,主要使用到了 php 的时间函数 mktime。下面首先还是直奔主题以示例说明如何使用 mktime 获取今日、昨日、上周、本月的起始时间戳和结束时间戳,然后在介绍一下 mktime 函数作用和用法。

1
2
3
4
5
6
7
8
9
10
11
12
//php获取今日开始时间戳和结束时间戳  
$beginToday=mktime(0,0,0,date('m'),date('d'),date('Y'));
$endToday=mktime(0,0,0,date('m'),date('d')+1,date('Y'))-1;
//php获取昨日起始时间戳和结束时间戳
$beginYesterday=mktime(0,0,0,date('m'),date('d')-1,date('Y'));
$endYesterday=mktime(0,0,0,date('m'),date('d'),date('Y'))-1;
//php获取上周起始时间戳和结束时间戳
$beginLastweek=mktime(0,0,0,date('m'),date('d')-date('w')+1-7,date('Y'));
$endLastweek=mktime(23,59,59,date('m'),date('d')-date('w')+7-7,date('Y'));
//php获取本月起始时间戳和结束时间戳
$beginThismonth=mktime(0,0,0,date('m'),1,date('Y'));
$endThismonth=mktime(23,59,59,date('m'),date('t'),date('Y'));

Read More

mysql分组取每组前几条记录(排序)

测试数据:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
CREATE TABLE `mygoods` (  
`goods_id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`cat_id` int(11) NOT NULL DEFAULT '0',
`price` tinyint(3) NOT NULL DEFAULT '0',
`status` tinyint(3) DEFAULT '1',
PRIMARY KEY (`goods_id`),
KEY `icatid` (`cat_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO `mygoods` VALUES (1, 101, 90, 0);
INSERT INTO `mygoods` VALUES (2, 101, 99, 1);
INSERT INTO `mygoods` VALUES (3, 102, 98, 0);
INSERT INTO `mygoods` VALUES (4, 103, 96, 0);
INSERT INTO `mygoods` VALUES (5, 102, 95, 0);
INSERT INTO `mygoods` VALUES (6, 102, 94, 1);
INSERT INTO `mygoods` VALUES (7, 102, 93, 1);
INSERT INTO `mygoods` VALUES (8, 103, 99, 1);
INSERT INTO `mygoods` VALUES (9, 103, 98, 1);
INSERT INTO `mygoods` VALUES (10, 103, 97, 1);
INSERT INTO `mygoods` VALUES (11, 104, 96, 1);
INSERT INTO `mygoods` VALUES (12, 104, 95, 1);
INSERT INTO `mygoods` VALUES (13, 104, 94, 1);
INSERT INTO `mygoods` VALUES (15, 101, 92, 1);
INSERT INTO `mygoods` VALUES (16, 101, 93, 1);
INSERT INTO `mygoods` VALUES (17, 101, 94, 0);
INSERT INTO `mygoods` VALUES (18, 102, 99, 1);
INSERT INTO `mygoods` VALUES (19, 105, 85, 1);
INSERT INTO `mygoods` VALUES (20, 105, 89, 0);
INSERT INTO `mygoods` VALUES (21, 105, 99, 1);

Read More

php二维数组排序方法(array_multisort usort)

一维数组排序可以使用asort、ksort等一些方法进程排序,相对来说比较简单。二维数组的排序怎么实现呢?使用array_multisort和usort可以实现

例如像下面的数组:

1
2
3
4
5
$users = array(  
array('name' => 'tom', 'age' => 20),
array('name' => 'anny', 'age' => 18),
array('name' => 'jack', 'age' => 22),
);

Read More

PHP引用(&)使用详解

官方文档:

1.引用是什么:http://www.php.net/manual/zh/language.references.whatare.php
2.引用做什么:http://www.php.net/manual/zh/language.references.whatdo.php
3.引用传递:http://www.php.net/manual/zh/language.references.pass.php
4.引用返回:http://www.php.net/manual/zh/language.references.return.php

php的引用(就是在变量或者函数、对象等前面加上&符号)

在PHP 中引用的意思是:不同的名字访问同一个变量内容。
与C语言中的指针是有差别的,C语言中的指针里面存储的是变量的内容,在内存中存放的地址。

Read More

jquery通过submit()和serialize()提交表单

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<script type="text/javascript">  
$(function() {
$('#form1').submit(function() { //当提交表单时,会发生 submit 事件。
//此处可做表单验证
if ($("#username").val() == "") {
alert("用户名不能为空");
return false;
}

var postData = $("#form1").serialize(); //序列化表单,后台可正常通过post方法获取数据
$.ajax({
type: "POST",
url: "/member/member/post_member",
data: postData,
beforeSend: function() {
$("#btn-submit").attr("disabled", true);//提交表单前的处理,防止用户多次点击【登陆】,重复提交表单
$("#btn-submit").val("正在登陆...");
},
success: function(msg) {
if (msg == 0) {
alert('操作成功');
window.location.href = '/member/member';
} else {
$("#btn-submit").attr("disabled", false);
$("#btn-submit").val("登陆");
alert("用户或密码错误!");
}
}
});
});
});
</script>
<div>
<form id="form1" onsubmit="return false;"> //注意:此处必须阻止表单提交
<!--表单内容部分-->
<input type="reset" value="重置" />
<input type="submit" id="btn-submit" value="登陆" />
</form>
</div>

Read More