日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > php >内容正文

php

将一个字段分成3个 php,整理几个方法

發(fā)布時(shí)間:2025/3/15 php 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 将一个字段分成3个 php,整理几个方法 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

將一個(gè)線性數(shù)組轉(zhuǎn)換為一個(gè)樹,或者多維數(shù)組

function array_stack (&$a, $p = '@parent', $c = '@children')

{

$l = $t = array();

foreach ($a AS $key => $val):

if (!$val[$p]) $t[$key] =& $l[$key];

else $l[$val[$p]][$c][$key] =& $l[$key];

$l[$key] = (array)$l[$key] + $val;

endforeach;

return $a = array('tree' => $t, 'leaf' => $l);

}

$node = array();

$node[1] = array('@parent' => 0, 'title' => 'I am node 1.');

$node[2] = array('@parent' => 1, 'title' => 'I am node 2.');

$node[3] = array('@parent' => 2, 'title' => 'I am node 3.');

$node[4] = array('@parent' => 1, 'title' => 'I am node 4.');

$node[5] = array('@parent' => 4, 'title' => 'I am node 5.');

print_r(array_stack($node));

數(shù)據(jù)分頁

function page_array($count,$page,$array,$order){

$page=(empty($page))?'1':$page; #判斷當(dāng)前頁面是否為空 如果為空就表示為第一頁面

$start=($page-1)*$count; #計(jì)算每次分頁的開始位置

if($order==1){

$array=array_reverse($array); #函數(shù)返回翻轉(zhuǎn)順序的數(shù)組

}

$totals=count($array);

$countpage=ceil($totals/$count); #計(jì)算總頁面數(shù)

$pagedata=array();

$pagedata=array_slice($array,$start,$count);

return $pagedata; #返回查詢數(shù)據(jù)

}

二維數(shù)組分組

function array_group_by($arr, $key)

{

$grouped = [];

foreach ($arr as $value) {

$grouped[$value[$key]][] = $value;

}

if (func_num_args() > 2) {

$args = func_get_args();

foreach ($grouped as $key => $value) {

$parms = array_merge([$value], array_slice($args, 2, func_num_args()));

$grouped[$key] = call_user_func_array('array_group_by', $parms);

}

}

return $grouped;

}

根據(jù)日期獲取星期

function get_week($date){ //強(qiáng)制轉(zhuǎn)換日期格式

$date_str=date('Y-m-d',strtotime($date)); //封裝成數(shù)組

$arr=explode("-", $date_str);

$year=$arr[0]; //月,輸出2位整型,不夠2位右對(duì)齊

$month=sprintf('%02d',$arr[1]);

$day=sprintf('%02d',$arr[2]); //時(shí)分秒默認(rèn)賦值為0;

$hour = $minute = $second = 0; //轉(zhuǎn)換成時(shí)間戳

$strap = mktime($hour,$minute,$second,$month,$day,$year); //獲取數(shù)字型星期幾

$number_wk=date("w",$strap); //自定義星期數(shù)組

$weekArr=array("星期日","星期一","星期二","星期三","星期四","星期五","星期六"); //獲取數(shù)字對(duì)應(yīng)的星期

return $weekArr[$number_wk];

}

計(jì)算 兩個(gè)時(shí)間差

function timediff($begin_time,$end_time)

{

if($begin_time < $end_time){

$starttime = $begin_time;

$endtime = $end_time;

}else{

$starttime = $end_time;

$endtime = $begin_time;

}

//計(jì)算天數(shù)

$timediff = $endtime-$starttime;

$days = intval($timediff/86400);

//計(jì)算小時(shí)數(shù)

$remain = $timediff%86400;

$hours = intval($remain/3600);

//計(jì)算分鐘數(shù)

$remain = $remain%3600;

$mins = intval($remain/60);

//計(jì)算秒數(shù)

$secs = $remain%60;

$res = array("day" => $days,"hour" => $hours,"min" => $mins,"sec" => $secs);

return $res;

}

遞歸遍歷目錄

function my_dir($dir) {

$files = array();

$e=mb_detect_encoding($dir,array('GB2312','GBK','UTF-8'));

$dir = mb_convert_encoding($dir,'GBK', $e);

if(@$handle = opendir($dir)) { //注意這里要加一個(gè)@,不然會(huì)有warning錯(cuò)誤提示:)

while(($file = readdir($handle)) !== false) {

if($file != ".." && $file != ".") { //排除根目錄;

$filename=$dir."/".$file;

if(is_dir($filename)) { //如果是子文件夾,就進(jìn)行遞歸

$files[$file] =my_dir($filename);

} else {

$e=mb_detect_encoding($file,array('GB2312','GBK','UTF-8'));

$file = mb_convert_encoding($file,'GBK', $e);

$files[] = $file;

}

}

}

closedir($handle);

return $files;

}

}

讀取文本內(nèi)容

function auto_read($file, $charset='UTF-8') {

if (!file_exists($file)) {

return false;

} else {

if(filesize($file) <= 0) {

return false;

}

$list = array('GBK', 'UTF-8', 'UTF-16LE', 'UTF-16BE', 'ISO-8859-1');

$handle = fopen($file,"r");

$str = fread($handle,filesize($file));

foreach ($list as $item) {

$tmp = mb_convert_encoding($str, $item, $item);

if (md5($tmp) == md5($str)) {

return mb_convert_encoding($str, $charset, $item);

}

}

return false;

}

文件大小計(jì)算

function format_size($size)

{

$unit = 'B';

if ($size >= 1024) {

$size /= 1024;

$unit = 'KB';

}

if ($size >= 1024) {

$size /= 1024;

$unit = 'MB';

}

if ($size >= 1024) {

$size /= 1024;

$unit = 'GB';

}

if ($size >= 1024) {

$size /= 1024;

$unit = 'TB';

}

return round($size) . $unit;

}

中文字符串拆分

function split_cn($arr){

$re=array(); //定義接受字符串的數(shù)組

for($i=0;$i

if(mb_substr($arr,$i,1,"utf-8")==''){

continue;

}

$res[]=mb_substr($arr,$i,1,"utf-8"); //將單個(gè)字符存到數(shù)組當(dāng)中

}

return $res;

}

本作品采用《CC 協(xié)議》,轉(zhuǎn)載必須注明作者和本文鏈接

七述

總結(jié)

以上是生活随笔為你收集整理的将一个字段分成3个 php,整理几个方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。