公共方法

/**
 *  utf-8中文截取,单字节截取模式
 *
 * @access    public
 * @param     string  $str  需要截取的字符串
 * @param     int  $slen  截取的长度
 * @param     int  $startdd  开始标记处
 * @return    string
 */ 
function cn_substr_utf8($str, $length, $start=0)
    {
        if(strlen($str) < $start+1)
        {
            return '';
        }
        preg_match_all("/./su", $str, $ar);
        $str = '';
        $tstr = '';

        //为了兼容mysql4.1以下版本,与数据库varchar一致,这里使用按字节截取
        for($i=0; isset($ar[0][$i]); $i++)
        {
            if(strlen($tstr) < $start)
            {
                $tstr .= $ar[0][$i];
            }
            else
            {
                if(strlen($str) < $length + strlen($ar[0][$i]) )
                {
                    $str .= $ar[0][$i];
                }
                else
                {
                    break;
                }
            }
        }
        return $str;
    }
/**
 *获取昨天、上周、上月、等时间戳
 * @param $time int -1:昨天 -7:上周 7:本周 -30:上个月 30:这个月 0:全部
 * return array();
 */
function gettime($time){
    switch($time){
        case -1;
            $time_s = mktime(0,0,0,date("m", strtotime("-1 day")), date("d",strtotime("-1 day")), date("Y",strtotime("-1 day")));
            $time_e = mktime(23,59,59,date("m", strtotime("-1 day")), date("d",strtotime("-1 day")), date("Y",strtotime("-1 day")));
            break;
        case -7;
            $time_s = mktime(0, 0 , 0,date("m"),date("d")-date("w")+1-7,date("Y"));
            $time_e = mktime(23,59,59,date("m"),date("d")-date("w")+7-7,date("Y"));
            break;
        case -30;
            $time_s = mktime(0, 0, 0, date('m')-1, 1, date('y'));
            $time_e = mktime(23, 59, 59, date('m'), 0, date('y'));
            break;
        case -360;
            $time_s = mktime(0, 0 , 0,1,1,date("Y")-1);
            $time_e = mktime(23,59,59,12,31,date("Y")-1);
            break;
        case 7;
            $time_s = mktime(0, 0 , 0,date("m"),date("d")-date("w")+1,date("Y"));
            $time_e = mktime(23,59,59,date("m"),date("d")-date("w")+7,date("Y"));
            break;
        case 30;
            $time_s = mktime(0, 0 , 0,date("m"),1,date("Y"));
            $time_e = mktime(23,59,59,date("m"),date("t"),date("Y"));
            break;
        case 360;
            $time_s = mktime(0, 0 , 0,1,1,date("Y"));
            $time_e = mktime(23,59,59,12,31,date("Y"));
            break;
        default;
            return 0;
    }
    return array($time_s,$time_e);
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值