您现在的位置是:网站首页> php专栏 常见问题

网站开发常用方法(一)

亦然2019-08-27 13:53:51常见问题人已围观

简介学习和工作中,觉得好用的方法和用法分享。

1.js根据文本内容设置slect选中

   $("#choose").find("option:contains('"+value+"')").attr("selected", true);

2.php数组根据某个字段计算总和

   $sum = array_sum(array_column($list, 'price'));

3.tp5查询时格式化时间戳

   $db  = Db::table('表名')->field('FROM_UNIXTIME(create_time,"%m") as time)
             ->where($where)
             ->select();

4.tp5取单个字段值

   $val = Db::name('表名')->where(条件)->value('字段名');

5.tp5快捷只取某列的记录

   $val = Db::name('表名')->where(条件)->column('字段名');

6.tp5快速清空数据表。使用truncate table也可以清空mysql表中所有内容。效率上truncate比delete快,但truncate删除后不记录 mysql日志,不可以恢复数据。

   Db::execute('truncate table 表名');

7.tp5获取今天的零点时间戳和23点59分59秒的时间戳

   composer安装 :composer require topthink/think-helper

   头部引用:use think\helper\Time;

   list($start, $end) = Time::today();
   echo $start; // 零点时间戳
   echo $end; // 23点59分59秒的时间戳

8.格式化文件单位

static public function byteFormat( $size, $dec = 2 ) {
    $a = array ( "B" , "KB" , "MB" , "GB" , "TB" , "PB" );
    $pos = 0;
    while ( $size >= 1024 ) {
        $size /= 1024;
        $pos ++;
    }
    return round( $size, $dec ) . " " . $a[$pos];
}

php

9.验证ip地址真假,真为true,假为false

   function CheckIsIP($ip){
       return !strcmp(long2ip(sprintf('%u',ip2long($ip))),$ip) ? true : false;
   }

10.获取客户端ip地址函数

function getIP() {
    if(getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"),"unknown")) {
        $ip = getenv("HTTP_CLIENT_IP");
    }
    else if(getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"),"unknown")) {
        $ip = getenv("HTTP_X_FORWARDED_FOR");
    }
    else if(getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"),"unknown")) {
        $ip = getenv("REMOTE_ADDR");
    }
    else if(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'],"unknown")) {
        $ip = $_SERVER['REMOTE_ADDR'];
    }
    else {
        $ip = "unknown";
    }
    return CheckIsIP($ip) ? $ip : "unknown" ;
}

php

11.获取毫秒级的时间戳

 function getMillisecond()
{
    //获取毫秒的时间戳
    $time = explode ( " ", microtime () );
    $time = $time[1] . ($time[0] * 1000);
    $time2 = explode( ".", $time );
    $time = $time2[0];
    return $time;
}
php

很赞哦!()

亦然

亦然(共32篇文章)

愿你我既可以朝九晚五,也可以浪迹天涯;愿你我既可以拈花把酒,也能围炉诗书茶。