返回时间戳差值部分,年、月、日

function get_date_diff($startstamp, $endstamp, $return = 'm')
{
$y = date('Y', $endstamp) - date('Y', $startstamp);
$m = date('m', $endstamp) - date('m', $startstamp); switch ($return) {
case 'y':
if ($y <= 1) {
$y = $m / 12;
}
$string = $y;
break;
case 'm':
$string = $y * 12 + $m;
break;
case 'd':
$string = ($endstamp - $startstamp) / 86400;
break;
}
return $string;
}

判断当前是否为https

function is_https()
{
if ((isset($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) == 'on')) {
return true;
} elseif (isset($_SERVER['REQUEST_SCHEME']) && strtolower($_SERVER['REQUEST_SCHEME']) == 'https') {
return true;
} elseif (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && strtolower($_SERVER['HTTP_X_FORWARDED_PROTO']) == 'https') {
return true;
} elseif (isset($_SERVER['HTTP_X_CLIENT_SCHEME']) && strtolower($_SERVER['HTTP_X_CLIENT_SCHEME']) == 'https') {
return true;
} else {
return false;
}
}

获取当前完整URL地址

function get_current_url()
{
$http_type = is_https() ? 'https://' : 'http://';
return $http_type . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
}

获取当前访问地址

function get_http_url($noport = false)
{
if (is_https()) {
$url = 'https://' . $_SERVER['HTTP_HOST'];
} else {
$url = 'http://' . $_SERVER['HTTP_HOST'];
}
if ($noport) {
$url = str_replace(':' . $_SERVER['SERVER_PORT'], '', $url);
}
return $url;
}

获取当前访问域名

function get_http_host($noport = true)
{
if ($noport) {
return str_replace(':' . $_SERVER['SERVER_PORT'], '', $_SERVER['HTTP_HOST']);
} else {
return $_SERVER['HTTP_HOST'];
}
}

清洗html代码的空白符号

function clear_html_blank($string)
{
$string = str_replace("\r\n", '', $string); // 清除换行符
$string = str_replace("\n", '', $string); // 清除换行符
$string = str_replace("\t", '', $string); // 清除制表符
$string = str_replace(' ', '', $string); // 清除大空格
$string = str_replace('&nbsp;', '', $string); // 清除 &nbsp;
$string = preg_replace('/\s+/', ' ', $string); // 清除空格
return $string;
}

是否为移动设备

function is_mobile()
{
$os = get_user_os();
if ($os == 'Android' || $os == 'iPhone' || $os == 'Windows Phone' || $os == 'iPad') {
return true;
}
}

返回时间戳差值部分,年、月、日

function get_date_diff($startstamp, $endstamp, $return = 'm')
{
$y = date('Y', $endstamp) - date('Y', $startstamp);
$m = date('m', $endstamp) - date('m', $startstamp); switch ($return) {
case 'y':
if ($y <= 1) {
$y = $m / 12;
}
$string = $y;
break;
case 'm':
$string = $y * 12 + $m;
break;
case 'd':
$string = ($endstamp - $startstamp) / 86400;
break;
}
return $string;
}

获取用户浏览器类型

function get_user_bs($bs = null)
{
if (isset($_SERVER["HTTP_USER_AGENT"])) {
$user_agent = strtolower($_SERVER["HTTP_USER_AGENT"]);
} else {
return null;
} // 直接检测传递的值
if ($bs) {
if (strpos($user_agent, strtolower($bs))) {
return true;
} else {
return false;
}
} // 固定检测
if (strpos($user_agent, 'micromessenger')) {
$user_bs = 'Weixin';
} elseif (strpos($user_agent, 'qq')) {
$user_bs = 'QQ';
} elseif (strpos($user_agent, 'weibo')) {
$user_bs = 'Weibo';
} elseif (strpos($user_agent, 'alipayclient')) {
$user_bs = 'Alipay';
} elseif (strpos($user_agent, 'trident/7.0')) {
$user_bs = 'IE11'; // 新版本IE优先,避免360等浏览器的兼容模式检测错误
} elseif (strpos($user_agent, 'trident/6.0')) {
$user_bs = 'IE10';
} elseif (strpos($user_agent, 'trident/5.0')) {
$user_bs = 'IE9';
} elseif (strpos($user_agent, 'trident/4.0')) {
$user_bs = 'IE8';
} elseif (strpos($user_agent, 'msie 7.0')) {
$user_bs = 'IE7';
} elseif (strpos($user_agent, 'msie 6.0')) {
$user_bs = 'IE6';
} elseif (strpos($user_agent, 'edge')) {
$user_bs = 'Edge';
} elseif (strpos($user_agent, 'firefox')) {
$user_bs = 'Firefox';
} elseif (strpos($user_agent, 'chrome') || strpos($user_agent, 'android')) {
$user_bs = 'Chrome';
} elseif (strpos($user_agent, 'safari')) {
$user_bs = 'Safari';
} elseif (strpos($user_agent, 'mj12bot')) {
$user_bs = 'MJ12bot';
} else {
$user_bs = 'Other';
}
return $user_bs;
}

获取用户操作系统类型

function get_user_os($osstr = null)
{
if (isset($_SERVER["HTTP_USER_AGENT"])) {
$user_agent = strtolower($_SERVER["HTTP_USER_AGENT"]);
} else {
return null;
} // 直接检测传递的值
if ($osstr) {
if (strpos($user_agent, strtolower($osstr))) {
return true;
} else {
return false;
}
} if (strpos($user_agent, 'windows nt 5.0')) {
$user_os = 'Windows 2000';
} elseif (strpos($user_agent, 'windows nt 9')) {
$user_os = 'Windows 9X';
} elseif (strpos($user_agent, 'windows nt 5.1')) {
$user_os = 'Windows XP';
} elseif (strpos($user_agent, 'windows nt 5.2')) {
$user_os = 'Windows 2003';
} elseif (strpos($user_agent, 'windows nt 6.0')) {
$user_os = 'Windows Vista';
} elseif (strpos($user_agent, 'windows nt 6.1')) {
$user_os = 'Windows 7';
} elseif (strpos($user_agent, 'windows nt 6.2')) {
$user_os = 'Windows 8';
} elseif (strpos($user_agent, 'windows nt 6.3')) {
$user_os = 'Windows 8.1';
} elseif (strpos($user_agent, 'windows nt 10')) {
$user_os = 'Windows 10';
} elseif (strpos($user_agent, 'windows phone')) {
$user_os = 'Windows Phone';
} elseif (strpos($user_agent, 'android')) {
$user_os = 'Android';
} elseif (strpos($user_agent, 'iphone')) {
$user_os = 'iPhone';
} elseif (strpos($user_agent, 'ipad')) {
$user_os = 'iPad';
} elseif (strpos($user_agent, 'mac')) {
$user_os = 'Mac';
} elseif (strpos($user_agent, 'sunos')) {
$user_os = 'Sun OS';
} elseif (strpos($user_agent, 'bsd')) {
$user_os = 'BSD';
} elseif (strpos($user_agent, 'ubuntu')) {
$user_os = 'Ubuntu';
} elseif (strpos($user_agent, 'linux')) {
$user_os = 'Linux';
} elseif (strpos($user_agent, 'unix')) {
$user_os = 'Unix';
} else {
$user_os = 'Other';
}
return $user_os;
}

php 常用工具函数的更多相关文章

  1. numpy 常用工具函数 —— np.bincount/np.average

    numpy 常用工具函数 —— np.bincount/np.average numpy 常用api(一) numpy 常用api(二) 一个函数提供 random_state 的关键字参数(keyw ...

  2. JavaScript常用工具函数

    检测数据是不是除了symbol外的原始数据 function isStatic(value) { return ( typeof value === 'string' || typeof value ...

  3. javascript常用工具函数总结(不定期补充)未指定标题的文章

    前言 以下代码来自:自己写的.工作项目框架上用到的.其他框架源码上的.网上看到的. 主要是作为工具函数,服务于框架业务,自身不依赖于其他框架类库,部分使用到es6/es7的语法使用时要注意转码 虽然尽 ...

  4. JS开发常用工具函数 总结

    js原生工具库 1.isStatic:检测数据是不是除了symbol外的原始数据 */ function isStatic(value) { return( typeof value === 'str ...

  5. 前端开发 —— js 常用工具函数(utilities)

    1. 时间 function getCurTime() { var date = new Date(); return date.toLocaleTimeString(); } date.toLoca ...

  6. JS开发常用工具函数

    1.isStatic:检测数据是不是除了symbol外的原始数据 function isStatic(value) { return ( typeof value === 'string' || ty ...

  7. JS常用工具函数

    /** * Created by gaojun-pd on 2016/10/27. */ var Util = { /** * 1.判断非空 * 2.获取字符串真实长度 汉字算两位 * 3.判断参数类 ...

  8. JS常用工具函数(持续记录)

    1.设置获取cookie //方式1 //设置cookie function SetCookie(name, value)//两个参数,一个是cookie的名字,一个是值 { var Days = 3 ...

  9. PHP常用工具函数之手机号相关

    1.手机号正确与否判定 //测试手机号 $phone = '17777777777'; $pattern = '/^1[356789]\d{9}$/'; $is = preg_match($patte ...

  10. JS几个常用的工具函数

    一个项目中JS也不可避免会出现重用,所以可以像Java一样抽成工具类,下面总结了几个常用的函数: 1.日期处理函数 将日期返回按指定格式处理过的字符串: function Format(now,mas ...

随机推荐

  1. JZOJ 2020.02.25【NOIP提高组】模拟A 组

    闲话 难度似乎比之前的简单了一些 但是难的题还是很难(我太菜了) 总结 针对三个题,先罗列正解所涉及的算法:字符哈希,组合数学,点分治 最后一个不会 组合数学?还好吧 字符哈希? 放在 \(T1\) ...

  2. Spring注解篇,学完注解深入了解SpringBoot更容易

    由于Spring Boot项目底层也都是Spring,使用Spring Boot就需要对Spring的注解有一定的了解,这次就把Spring的部分注解聊一下.熟悉了Spring的注解使用Spring ...

  3. 解析关于Tomcat Servlet-request的获取请求参数及几种常用方法

    摘要:本文主要讲解Tomcat之Servlet-request请求参数.Servlet转发机制.常用方法 本文分享自华为云社区<浅谈Tomcat之Servlet-request获取请求参数及常用 ...

  4. MySQL 查询常用操作(0) —— 查询语句的执行顺序

    MySQL中明确查询语句的执行顺序极其重要,了解执行顺序才不至于犯一些简单错误,例如having 后面是否可以使用 select 中重命名的列名等问题.另外SQL中实际使用最频繁的就是查询(Quein ...

  5. 40.Ribbon和Feign

    优先级:全局代码 < 全局属性 < 细粒度代码 < 细粒度属性 推荐属性配置

  6. 预处理指令详解(C语言

    一.预处理符号 预处理符号是C语言内置的符号,是可以直接使用的. 其中,若遵顼ANSI C,则__STDC__ 为1,否则未定义. 二.#define 1)定义标识符 define可以用来定义标识符, ...

  7. iOS开发 调试技巧

    1.普通断点 2.条件断点 3.全局断点 4.analyze 分析器 5.leaks 检查器 6.僵尸对象 7.lldb 命令 8.instruments 9.xcode视图调试

  8. Dependency Analyzer

    Dependency Analyzer  idea插件  查找maven依赖 1.Setting---->Plugins------>Dependency Analyzer 2.使用 po ...

  9. IsNotEmpty和isNotBlank的区别

    isNotEmpty和isNotBlank都是判断字符串非空首先查看isNotEmpty( )isNotEmpty判断是否为空(null或size=0),不为空就返回true StringUtils. ...

  10. (app笔记)Appium如何开启、配置、启用

    1.安装adb 2.打开手机调试 3.连接手机 4.appium运行前,手机需要io.appium.uiautomator2.server 和 Appium Settings. 5.appium操作: ...