函数
drzdryse
这个作者很懒,什么都没留下…
展开
-
数值、Excel列互转
/** * 数值转Excel列 * @param int $num 整数 * @return string */function num2excel(int $num): string{ $str = ''; $arr = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'.原创 2021-12-18 17:04:22 · 554 阅读 · 1 评论 -
反转多字节字符串
/** * 反转多字节字符串 * @param string $multibyte 多字节字符串 * @return string */function mb_strrev(string $multibyte): string{ $str = ''; $len = mb_strlen($multibyte); // 反转中文字符串 for ($i = $len - 1; $i > -1; -- $i) { $str .= mb_subs..原创 2021-11-12 10:57:26 · 198 阅读 · 0 评论 -
数字转人民币大写,PHP实现
/** * 获取人民币数字大写 * @param int|string $num * @return string */function get_rmb(int|string $num): string{ $str = ''; $a = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖']; $b = ['分', '角', '元', '整']; $c = ['', '拾', '佰', '仟']; $d =.原创 2021-11-12 15:00:00 · 402 阅读 · 0 评论 -
对长数字字符串进行四舍五入
/** * 对长数字字符串四舍五入 * @param string $num 长数字字符串 * @param int $places 保留小数位数 * @return string */function sp_round(string $num, int $places): string{ // 检验数字字符串 preg_match_all('/[^\d.]+/', $num, $matches); if ($matches[0]) die('不合法的数字字符串.原创 2021-11-12 10:45:59 · 517 阅读 · 0 评论 -
获取随机名字
/** * 获取文件行数 * @param string $filename 文件名 * @return int */function file_line(string $filename): int{ if (!file_exists($filename)) die('文件不存在'); $n = 0; $fp = fopen($filename, 'r'); while (!feof($fp)) { if (fgets($fp)) ++ ..原创 2021-11-03 10:55:59 · 222 阅读 · 0 评论 -
获取文件指定行内容(多行)
/** * 获取文件指定行内容(多行) * @param string $filename 文件名(路径) * @param array $lines 文件行数(多行) * @param bool $mod 是否去除空格,默认去除 * @return array */function file_content(string $filename, array $lines, bool $mod = true): array{ if (!file_exists(..原创 2021-11-03 10:39:22 · 260 阅读 · 0 评论 -
获取文件行数
/** * 获取文件行数 * @param string $filename 文件名 * @return int */function file_line(string $filename): int{ if (!file_exists($filename)) die('文件不存在'); $n = 0; $fp = fopen($filename, 'r'); while (!feof($fp)) { if (fgets($fp)) ++ $.原创 2021-11-03 10:37:37 · 365 阅读 · 0 评论 -
获取两个日期(时间戳)之间的差值
/** * 获取两个日期(时间戳)之间的差值 例:get_date_diff('2012-01-01 01:01:01', '2013-02-02 02:02:02') 或者 get_date_diff('1325350861', '1359741722') * @param string|int $var1 日期一(时间戳一) 例:2012-01-01 01:01:01 或者 1325350861 * @param string|int $var2 日期二(时间戳二) 例:2013-02-02 0.原创 2021-11-03 10:35:17 · 1297 阅读 · 0 评论 -
驼峰命名和下划线命名互转
$str1 = 'get_name';$str2 = 'getUserNameList';/** * 驼峰转下划线 思路:“A”正则替换为“@A”,然后转小写,最后“@”替换为“_” * @param string $str 驼峰字符串 * @return string */function underline(string $str): string{ return strtr(strtolower(preg_replace('/([A-Z])/', '@$1', $str)).原创 2021-11-02 21:18:09 · 1590 阅读 · 0 评论 -
计算机 加减乘除原理 二进制运算 PHP 位运算
<?phprequire('function.php');// 二进制从右向左计算$a = 1; // 1 0001$b = 1 + 2; // 3 0011dump($a & $b); // 0001dump($a | $b); // 0011dump($a ^ $b); // 0010dump(~$a); // -2dump(decbin($a)); // "1"dump(decbin(~$a)); // "111111111111111111111111.原创 2020-06-01 11:20:55 · 299 阅读 · 0 评论 -
计算收益 - 揭秘坑爹的养老金 保守算法,减少一年收益
/** * 计算收益 - 揭秘养老金骗局 保守算法,减少一年收益 * @param int $money 每次投钱金额 * @param float $rate 利率 * @param int $age 开始投钱年龄 * @param int $until 结束投钱年龄 * @param int $limit 领钱结束年龄 * @param string $model 模式 y-年 m-月 w-周 * @return array */function ge...原创 2021-07-17 18:40:31 · 106 阅读 · 0 评论 -
PHP获取今天、昨天、明天、本周的日期 -- strtotime 理解并使用
<?php// 打印函数function p($v = '', string $end='<br/>'){ echo $v,$end;} // 今天是 2020-08-04 星期二p('简写:当前时间,今天,昨天');p(date('Y-m-d H:i:s', time())); // 2020-08-04 10:56:36 当前时间p(date('Y-m-d H:i:s', strtotime('now'))); // 2020-08-04 10:56:3.原创 2020-08-04 11:38:58 · 2890 阅读 · 0 评论