1-需要取得类似excel的行列号里的数字时,便捷方法是trim($str,'A..Z'),$str是类似"N41"这样的excel行号,此法可以直接去掉大写字母,注意结果+0或者*1以转换成数值型;
2-转换变量类型,PHP有3个val函数:floatval(),intval(),strval(),如字面意思;
3-js没有方便的全局替换函数,str.replace()的替换句柄参数如果不是正则,就只对目标字符串替换一次,如果是正则,必须写成/[正则]/g这样带g修正符的正则式才能起到全局替换作用;
4-时间戳的计算
mysql:
select unix_timestamp();
select unix_timestamp('1986-10-05 10:43:23');
select from_unixtime(unix_timestamp());
select from_unixtime(528864203,'%Y年%m月%d日 %H时%i分%s秒');
php:
echo time();
echo strtotime('1986-10-05 10:43:23');
echo date('Y-m-d H:i:s',528864203);
javascript:
timestamp = Math.round(new Date().getTime()/1000) = 秒;
timestamp = Math.round(new Date('1986/10/05 10:43:23').getTime()/1000) = 秒;
5-jquery如何设置select索引选中,直接用dom操作方式操作索引:$('#selectId').get(0).selectedIndex=index;用值方式操作索引:$('#selectId').val('selectIndexValue');
6-在jquery元素动态绑定过程中,javascript的原始关键字this仍然可用,不必非要使用$(this),但是只对应javascript的原始函数;
7-get方法,用例:$('#id').get(0);返回以该id为id的元素的原始dom对象,即=document.getElementById('id')的结果,为jquery和javascript之间对象轻易转换的方法
8-最方便的mysql字符设置函数,另没有utf-8字符集,只有utf8字符集;
9-stop=false;$.ajax({success:function(){这里面不能用return false跳出整个<script></script>,只能跳出该处的function,注意;可以使用stop=true}});应该另起一行使用if (stop) return false;
10-form的submit过程,可以简单实用<input type="submit" οnclick="return formverify()">在提交按钮上做判断,不用使用form的onsubmit事件;判断点击了哪个提交按钮,使用<input type="submit" name="save" value="save">,PHP判断isset($_POST['save'])或者'save' = $_POST['save'];
11-JS:
$.getJSON('/crm/common/ajax.php',{content:'123'},function(json){
alert(json.content);
});
PHP:
ajax.php--
echo json_encode($_GET);exit;
一般来说,ajax传递一个数组的话,用getJSON更为方便;
12-union all的速度比union更快,因为他不做比较去掉重复,union则会多一步去重;
13-<input name="filter[companyName]" value='myname'/>
<input name="filter[area]" value='东区'/>
注意[]内的文字不要加引号,否则URL出来会有错误,不加引号提交之后PHP也可以辨识得到。
结果即可以提交到$_GET:
$_GET = array('companyName'=>'myname','area'=>'东区);
14-php strtotime 周计算--php的周计算和中国人习惯不同,因此:
$monday = '1' != date('w')?date('Y-m-d', strtotime('last Monday')):date('Y-m-d', strtotime('Monday'));
$sunday = date('Y-m-d',strtotime('Sunday'));
15-mysql join on 可以带and,例如:
select * from (select id,realname from `user` where id=157) a left join `crm_customer2user` cu on a.id=cu.userId and cu.customerType='A'
用于将被join表没有对应数据的时候也可以将主join表的数据显示出来
16-php双引号括起来的字符串内变量通常可以直接显示,不能显示的时候变量名两边加上花括号{}可以标记为特殊引用
17-要选取jquery每一个父元素下的某个子元素使用:nth-child(index)做选择器修饰,index从1开始,表示选取以前面选择器过滤出来的每一个父元素下的第几个子元素