关于招聘项目的常用方法类(PHP版)

 1、最低工资与最高工资的数字转化为 几千到几千的形式

/*** @param $minwage 最低工资* @param $maxwage 最高工资* @param int $negotiable 0表示具体工资,1表示面议* @return string|string[]*/
public function handle_wage($minwage, $maxwage, $negotiable = 0){$wage_unit = "0";// 0表示K,1表示千if ($negotiable == 0) {if ($wage_unit == 1) {$minwage =$minwage % 1000 == 0? $minwage / 1000 . 'K': round($minwage / 1000, 1) . 'K';$maxwage = $maxwage? ($maxwage % 1000 == 0? $maxwage / 1000 . 'K': round($maxwage / 1000, 1) . 'K'): 0;} elseif ($wage_unit == 2) {if ($minwage >= 10000) {if ($minwage % 10000 == 0) {$minwage = $minwage / 10000 . '万';} else {$minwage = round($minwage / 10000, 1);$minwage = strpos($minwage, '.')? str_replace('.', '万', $minwage): $minwage . '万';}} elseif ($minwage < 1000) {$minwage = $minwage;} else {if ($minwage % 1000 == 0) {$minwage = $minwage / 1000 . '千';} else {$minwage = round($minwage / 1000, 1);$minwage = strpos($minwage, '.')? str_replace('.', '千', $minwage): $minwage . '千';}}if ($maxwage >= 10000) {if ($maxwage % 10000 == 0) {$maxwage = $maxwage / 10000 . '万';} else {$maxwage = round($maxwage / 10000, 1);$maxwage = strpos($maxwage, '.')? str_replace('.', '万', $maxwage): $maxwage . '万';}} elseif ($maxwage) {if ($maxwage % 1000 == 0) {$maxwage = $maxwage / 1000 . '千';} else {$maxwage = round($maxwage / 1000, 1);$maxwage = strpos($maxwage, '.')? str_replace('.', '千', $maxwage): $maxwage . '千';}} else {$maxwage = 0;}}if ($maxwage == 0) {$return = '面议';} else {if ($minwage == $maxwage) {$return = $minwage;} else {$return = $minwage . '~' . $maxwage;}}} else {$return = '面议';}return $return;}

2、根据时间戳大小返回时间的差值

/*** 返回两个时间的相距时间,*年*月*日*时*分*秒* @param int $remainder_seconds 时间戳差值* @param int $return_type 默认值为0,0/不为0则拼接返回,1/*秒,2/*分*秒,3/*时*分*秒/,4/*日*时*分*秒,5/*月*日*时*分*秒,6/*年*月*日*时*分*秒* @param array $format_array 格式化字符,例,array('年', '月', '日', '时', '分', '秒')* @return String or false*/
function diffTimeAll($remainder_seconds, $return_type=0, $format_array=array('年', '个月', '天', '个小时', '分', '秒')) {//年$years = 0;if (($return_type == 0 || $return_type == 6) && $remainder_seconds - 31536000 > 0) {$years = floor($remainder_seconds / (31536000));}//月$monthes = 0;if (($return_type == 0 || $return_type >= 5) && $remainder_seconds - $years * 31536000 - 2592000 > 0) {$monthes = floor(($remainder_seconds - $years * 31536000) / (2592000));}//日$days = 0;if (($return_type == 0 || $return_type >= 4) && $remainder_seconds - $years * 31536000 - $monthes * 2592000 - 86400 > 0) {$days = floor(($remainder_seconds - $years * 31536000 - $monthes * 2592000) / (86400));}//时$hours = 0;if (($return_type == 0 || $return_type >= 3) && $remainder_seconds - $years * 31536000 - $monthes * 2592000 - $days * 86400 - 3600 > 0) {$hours = floor(($remainder_seconds - $years * 31536000 - $monthes * 2592000 - $days * 86400) / 3600);}//分$minutes = 0;if (($return_type == 0 || $return_type >= 2) && $remainder_seconds - $years * 31536000 - $monthes * 2592000 - $days * 86400 - $hours * 3600 - 60 > 0) {$minutes = floor(($remainder_seconds - $years * 31536000 - $monthes * 2592000 - $days * 86400 - $hours * 3600) / 60);}//秒$seconds = $remainder_seconds - $years * 31536000 - $monthes * 2592000 - $days * 86400 - $hours * 3600 - $minutes * 60;$return = false;switch ($return_type) {case 0:if ($years > 0) {$return = $years . $format_array[0] . $monthes . $format_array[1] . $days . $format_array[2] . $hours . $format_array[3] . $minutes . $format_array[4] . $seconds . $format_array[5];} else if ($monthes > 0) {$return = $monthes . $format_array[1] . $days . $format_array[2] . $hours . $format_array[3] . $minutes . $format_array[4] . $seconds . $format_array[5];} else if ($days > 0) {$return = $days . $format_array[2] . $hours . $format_array[3] . $minutes . $format_array[4] . $seconds . $format_array[5];} else if ($hours > 0) {$return = $hours . $format_array[3] . $minutes . $format_array[4] . $seconds . $format_array[5];} else if ($minutes > 0) {$return = $minutes . $format_array[4] . $seconds . $format_array[5];} else {$return = $seconds . $format_array[5];}break;case 1:$return = $seconds . $format_array[5];break;case 2:$return = $minutes . $format_array[4] . $seconds . $format_array[5];break;case 3:$return = $hours . $format_array[3] . $minutes . $format_array[4] . $seconds . $format_array[5];break;case 4:$return = $days . $format_array[2] . $hours . $format_array[3] . $minutes . $format_array[4] . $seconds . $format_array[5];break;case 5:$return = $monthes . $format_array[1] . $days . $format_array[2] . $hours . $format_array[3] . $minutes . $format_array[4] . $seconds . $format_array[5];break;case 6:
//            第一行是返回年月日时分秒,第二行是年月,个人项目只需要年月,需要上面的自行修改
//            $return = $years . $format_array[0] . $monthes . $format_array[1] . $days . $format_array[2] . $hours . $format_array[3] . $minutes . $format_array[4] . $seconds . $format_array[5];$return = $years . $format_array[0] . $monthes . $format_array[1];break;default:$return = false;}return $return;
}

3、格式化当前登录时间,传的值为时间戳

/*** 格式化最近登录时间*/
function format_last_login_time($login_time)
{if (date('Y-m-d', $login_time) == date('Y-m-d')) {return '今天';} elseif (date('Y-m-d', $login_time) == date('Y-m-d', strtotime('yesterday'))) {return '昨天';} elseif (date('Y-m-d', $login_time) ==date('Y-m-d', strtotime('yesterday') - 1)) {return '前天';} elseif (time() - $login_time > 7 * 24 * 3600) {return '超过一周';} else {return date('Y-m-d', $login_time);}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/806980.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue3---基础3(组合式API,setup语法糖)

选项式API与组合式API 在Vue2内是选项式API&#xff08;OptionsAPI&#xff09; 在Vue3内是组合式API&#xff08;CompositionAPI&#xff09; 选项式API 示例代码 <script lang"ts"> export default {name: person,data() {return {name: "张杰",a…

白盒测试-条件覆盖

​ 条件覆盖是指运行代码进行测试时&#xff0c;程序中所有判断语句中的条件取值为真值为假的情况都被覆盖到&#xff0c;即每个判断语句的所有条件取真值和假值的情况都至少被经历过一次。 ​ 条件覆盖率的计算方法为&#xff1a;测试时覆盖到的条件语句真、假情况的总数 / 程…

LLM(一):大语言模型

自2022年&#xff0c;ChatGPT发布之后&#xff0c;大语言模型&#xff08;Large Language Model&#xff09;&#xff0c;简称LLM掀起了一波狂潮。作为学习理解LLM的开始&#xff0c;先来整体的理解一下大语言模型 一&#xff0c;发展历史 大语言模型的发展历史可以追溯到早期…

【讲解下目标追踪】

&#x1f308;个人主页: 程序员不想敲代码啊 &#x1f3c6;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f44d;点赞⭐评论⭐收藏 &#x1f91d;希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出指正&#xff0c;让我们共…

【AI 测试】一:算法和数据结构理解

目录 算法和数据结构理解概念及实际列子一、排序算法概念冒泡排序 (Bubble Sort)选择排序 (Selection Sort)插入排序 (Insertion Sort)归并排序 (Merge Sort)快速排序 (Quick Sort)堆排序 (Heap Sort)计数排序 (Counting Sort)桶排序 (Bucket Sort)基数排序 (Radix Sort)二、查…

每日一题——环形链表的约瑟夫问题

题目链接&#xff1a; 环形链表的约瑟夫问题_牛客题霸_牛客网 题目&#xff1a; 描述 编号为 1 到 n 的 n 个人围成一圈。从编号为 1 的人开始报数&#xff0c;报到 m 的人离开。 下一个人继续从 1 开始报数。 n-1 轮结束以后&#xff0c;只剩下一个人&#xff0c;问最后留…

17. 网络编程2

本合集已发布文章 (一)Linux应用编程基本概念 (二)Linux文件I/O基础 (三)Linux标准I/O库

idm线程越多越好吗 idm线程数多少合适 IDM百度云下载 IDM下载器如何修改线程数

IDM&#xff08;Internet Download Manager&#xff09;是一款流行的网络下载器&#xff0c;它支持多线程下载&#xff0c;这意味着它可以同时建立多个连接来下载文件的不同部分&#xff0c;从而提高下载速度。我们在使用IDM的时候总是有很多疑问&#xff0c;今天我们学习IDM线…

【形而上学】数据治理之元数据——用数据的数据管理数据

【形而上学】数据治理之元数据——用数据的数据管理数据 一、都柏林核心元数据元素集二、元数据2.1 什么是元数据2.2 元数据类型2.3 实现元数据的技术 三、元数据相关标准 一、都柏林核心元数据元素集 1995年3月&#xff0c;NCSA与OCLC共同在俄亥俄州都柏林市举行了一次仅有受邀…

Linux命令学习—linux 的常用命令

1.1、改变目录 cd 目录的表达方法&#xff1a; /根目录 .当前目录 .. 上一级目录 ~家目录 #cd / 进入到系统根目录 #cd . 进入当前目录 #cd .. 进入当前目录的父目录&#xff0c;返回上层目录 #cd /tmp 进入指定目录/tmp #cd ~ 进入当前用户的家目录 #cd …

【智能优化算法详解】粒子群算法PSO量子粒子群算法QPSO

1.粒子群算法PSO 博主言简意赅总结-算法思想&#xff1a;大方向下个体自学习探索群体交流共享 对比适应度找到最优点 背景 粒子群算法&#xff0c;也称粒子群优化算法或鸟群觅食算法&#xff08;Particle Swarm Optimization&#xff09;&#xff0c; 缩写为 PSO。粒子群…

Linux:文本编辑器 - vim

Linux&#xff1a;文本编辑器 - vim vim基本操作普通模式模式切换移动光标复制粘贴删除替换撤销 底行模式行号查找 vim基本操作 Vim(Vi Improved)是一款功能强大的文本编辑器&#xff0c;是Unix/Linux系统中广泛使用的编辑器之一。它源于上世纪70年代开发的Vi编辑器&#xff0…

C#学习笔记9:winform上位机与西门子PLC网口通信_上篇

今日继续我的C#学习笔记&#xff0c;今日开始学习打开使用千兆网口来进行与西门子PLC的通信&#xff1a; 文章提供整体代码、解释、测试效果截图、整体测试工程下载&#xff1a; 主要包含的知识有&#xff1a;下载NuGet程序包、西门子PLC及通信协议、搭建虚拟的S7通信仿真环境…

为了进阿里拿Offer,逼得我两个月吃透了这些Java高级面试题解析,终于上岸

JVM与调优 21 题及答案解析 JVM的内存结构。 JVM方法栈的工作过程&#xff0c;方法栈和本地方法栈有什么区别。 JVM的栈中引用如何和堆中的对象产生关联。 可以了解一下逃逸分析技术。 gc的常见算法 CMS以及G1的垃圾回收过程&#xff0c;CMS的各个阶段哪两个是Stop the wo…

前端解决跨域问题

什么是跨域&#xff1f; 跨域是浏览器行为&#xff0c;是浏览器的一种安全策略&#xff1b;由于浏览器 同源策略 导致浏览器访问服务器时被拦截 同源策略&#xff08;Sameoriginpolicy&#xff09;&#xff1a; 是一种约定&#xff0c;它是浏览器最核心也最基本的安全功能&am…

51.网络游戏逆向分析与漏洞攻防-角色管理功能通信分析-角色选择的模拟与截取

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 如果看不懂、不知道现在做的什么&#xff0c;那就跟着做完看效果 内容参考于&#xff1a;如果看不懂、不知道现在做的什么&#xff0c;那就跟着做完看效果&…

制造业、能源等传统行业进行数字化转型时要注意哪些问题?

制造业、能源等传统行业在进行数字化转型时需要注意以下几个关键问题&#xff1a; 1、明确转型目标和战略规划&#xff1a;企业需要根据自身的业务特点、市场需求和长远发展目标&#xff0c;制定清晰的数字化转型战略。包括确定转型的重点领域、预期成果、时间表和资源投入。 …

阿里云云效CI/CD配置

1.NODEJS项目流水线配置(vue举例) nodejs构建配置 官方教程 注意:下图的dist是vue项目打包目录名称,根据实际名称配置 # input your command here cnpm cache clean --force cnpm install cnpm run build 主机部署配置 rm -rf /home/vipcardmall/frontend/ mkdir -p /home/…

计算分数和-第12届蓝桥杯选拔赛Python真题精选

[导读]&#xff1a;超平老师的Scratch蓝桥杯真题解读系列在推出之后&#xff0c;受到了广大老师和家长的好评&#xff0c;非常感谢各位的认可和厚爱。作为回馈&#xff0c;超平老师计划推出《Python蓝桥杯真题解析100讲》&#xff0c;这是解读系列的第48讲。 计算分数和&#…

java并发体系-锁

ReentrantLock ReentrantLock是Java并发编程中的一种锁机制。它的基本流程如下&#xff1a; 创建ReentrantLock对象。在需要加锁的代码块前调用lock()方法&#xff0c;该方法会尝试获取锁&#xff0c;如果锁已被其他线程占用&#xff0c;则当前线程会被阻塞。执行需要加锁的代…