解决方法如下:关联数组和索引数组都可以用
代码如下 | 复制代码 |
function array_shuffle($array) |
代码如下 | 复制代码 |
// 函数名:ExchangeMoney($N_money) // 作 用:资金转换函数 // 参 数:$N_money(待转换的金额数字) // 返回值:字符串 // 备 注:本函数示例:$char=ExchangeMoney(5645132.3155) ==> $char='¥5,645,132.31' //-----------------------------------------------------------------------------------
function ExchangeMoney($N_money) { $A_tmp=explode(".",$N_money ); //将数字按小数点分成两部分,并存入数组$A_tmp $I_len=strlen($A_tmp[0]); //测出小数点前面位数的宽度 if($I_len%3==0) { $I_step=$I_len/3; //如前面位数的宽度mod 3 = 0 ,可按,分成$I_step 部分 }else { $step=($len-$len%3)/3+1; //如前面位数的宽度mod 3 != 0 ,可按,分成$I_step 部分+1 }
$C_cur=""; //对小数点以前的金额数字进行转换 while($I_len<>0) { $I_step--;
if($I_step==0) { $C_cur .= substr($A_tmp[0],0,$I_len-($I_step)*3); }else { $C_cur .= substr($A_tmp[0],0,$I_len-($I_step)*3).","; }
$A_tmp[0]=substr($A_tmp[0],$I_len-($I_step)*3); $I_len=strlen($A_tmp[0]); }
//对小数点后面的金额的进行转换 if($A_tmp[1]=="") { $C_cur .= ".00"; }else { $I_len=strlen($A_tmp[1]); if($I_len<2) { $C_cur .= ".".$A_tmp[1]."0"; }else { $C_cur .= ".".substr($A_tmp[1],0,2); } } //加上人民币符号并传出 $C_cur="¥".$C_cur; return $C_cur; } |
下例:获得2012-5-1号之前一天的日期
代码如下 | 复制代码 |
<?php |
输出:2012-4-30
此外,time()函数获得当前日期的时间戳!
再看一个实例
代码如下 | 复制代码 |
<?PHP $Date_2=”2009-10-1″; $Date_List_a1=explode(“-”,$Date_1); $Date_List_a2=explode(“-”,$Date_2); $d1=mktime(0,0,0,$Date_List_a1[1],$Date_List_a1[2],$Date_List_a1[0]); $d2=mktime(0,0,0,$Date_List_a2[1],$Date_List_a2[2],$Date_List_a2[0]); $Days=round(($d1-$d2)/3600/24); Echo “两日期之前相差有$Days 天”; |
一些时间参考
代码如下 | 复制代码 |
<?php echo $showtime=date(“Y-m-d H:i:s”);?> |
显示的格式: 年-月-日 小时:分钟:妙
相关时间参数:
a – “am” 或是 “pm”
A – “AM” 或是 “PM”
d – 几日,二位数字,若不足二位则前面补零; 如: “01″ 至 “31″
D – 星期几,三个英文字母; 如: “Fri”
F – 月份,英文全名; 如: “January”
h – 12 小时制的小时; 如: “01″ 至 “12″
H – 24 小时制的小时; 如: “00″ 至 “23″
g – 12 小时制的小时,不足二位不补零; 如: “1″ 至 12″
G – 24 小时制的小时,不足二位不补零; 如: “0″ 至 “23″
i – 分钟; 如: “00″ 至 “59″
j – 几日,二位数字,若不足二位不补零; 如: “1″ 至 “31″
l – 星期几,英文全名; 如: “Friday”
m – 月份,二位数字,若不足二位则在前面补零; 如: “01″ 至 “12″
n – 月份,二位数字,若不足二位则不补零; 如: “1″ 至 “12″
M – 月份,三个英文字母; 如: “Jan”
s – 秒; 如: “00″ 至 “59″
S – 字尾加英文序数,二个英文字母; 如: “th”,”nd”
t – 指定月份的天数; 如: “28″ 至 “31″
U – 总秒数
w – 数字型的星期几,如: “0″ (星期日) 至 “6″ (星期六)
Y – 年,四位数字; 如: “1999″
y – 年,二位数字; 如: “99″
z – 一年中的第几天; 如: “0″ 至 “365″
可以自由设定显示的内容,连接符号或是显示位置,例如 date(“m-d H”) 或者date(“dmY”);?>等
这两个函数的功能正好相反chr 函数从指定的 ASCII 值返回字符而ord() 函数返回字符串第一个字符的 ASCII 值。明白这些大家就好用此函数了。先看chr函数
chr() 函数从指定的 ASCII 值返回字符。
chr(ascii)
ascii 参数可以是十进制、八进制或十六进制。通过前置 0 来规定八进制,通过前置 0x 来规定十六进制
例子
代码如下 | 复制代码 |
<?php 4 |
是不是很神奇,其实也不怪我经常会把一些看不到编码用chr来操作如
代码如下 | 复制代码 |
<? echo chr(13); echo chr(32); ?> |
大家想想这会输出什么呢,结果是
一个回车,一个空格
下面再来看ord函数
ord() 函数返回字符串第一个字符的 ASCII 值。
从上面来看正好与chr 相反是吧,
语法
代码如下 | 复制代码 |
ord(string) 输出结果: 104 |
好了,现在我们来看一个综合的实例
代码如下 | 复制代码 |
<?php $str1=chr(88); echo $str1; //返回值为X $str2=chr(ord(X)+1); // echo $str2; //返回值为 Y echo "t"; $str3=ord('S'); echo $str3; //返回值为83 ?> |
下面有一篇关于php ord 函数与中文乱码解决方法
更多详细内容请查看:http://www.111cn.net/phper/php-function/php-ord.htm
文章很简单二个实例实现了php目录创建与递归无限创建和删除目录功能,有需要的朋友可以参考一下,我们用的是mkdir,rddir来实例的。下面是程序代码:
代码如下 | 复制代码 |
function mkdirs($dir) { if(!is_dir($dir)) { if(!mkdirs(dirname($dir))){ return false; } if(!mkdir($dir,0777)){ return false; } } return true; } mkdirs('div/css/layout'); |
同样的思路,php用rmdir和unlink递归删除多级目录的代码:
代码如下 | 复制代码 |
function rmdirs($dir) |