PHP自定义函数

日期函数-取当前日是第几周

function myweek() { 
$current_date=getdate(); 
$myweek1 = date("Y年m月d日"); 
$myweek2 = $current_date[wday]; 
switch($myweek2){ 
case 1; 
$myweek2 = "周一"; 
break; 
case 2; 
$myweek2 = "周二";
 break; 
case 3; 
$myweek2 = "周三";
break; case 4; 
$myweek2 = "周四"; 
break; case 5; 
$myweek2 = "周五";
break; case 6; 
$myweek2 = "周六"; 
break; default; 
$myweek2 = "周日"; 
break; 
} 
$myweek3 = strftime("%W"); 
$myweek4 = $current_date[year]; 
$myweek5 = getstartweek(); 
$str = "$myweek1 $myweek2 | ".$myweek4."年第".$myweek3."周(".$myweek5[0]."-".$myweek5[1].")"; 
return $str;
} //以星期日为每星期的第一天 
function getstartweek(){ 
$week = date(w); 
if($week == 0)$week = 7; 
$time = mktime(); 
$time = $time-60*60*24*$week; 
$time2 = $time+60*60*24*6; 
$mydate[] = date("m月d日",$time); 
$mydate[] = date("m月d日",$time2); 
return $mydate; } 
//下面是自定义星期函数 $myweek=myweek(); 

自定义函数:随机2位数乘法:

//第一种
echo get_array();

//第二种
echo get_array(20, 20, 'random');

/*
 *  取得指定格式的阵列
 *  @param  number  $count      要显示内容的总数量
 *  @param  number  $line_num   每行要显示的数量
 *  @param  string  $type       显示内容的类型:'multiply': 两位随机数乘法; 'random': 1-100的随机数
 *  @return string
 */
function get_array($count=20, $line_num=4, $type='multiply'){
    $str = '';
    for($i=1; $i<=$count; $i++) {
        if($type == 'multiply') {
            $a = rand(10,99);
            $b = rand(10,99);
            $str .= $a.'x'.$b.'='.($a*$b);
        } elseif($type == 'random') {
            $str .= rand(01,20);
        }

        if(($i % $line_num) == 0) {
            $str .= "<br/>\n";
        } else {
            $str .= ' ';
        }
    }
    return $str;
}


如何使用PHP中的日期和时间函数

(1)date  

用法:  
date(格式,[时间]);  
如果没有时间参数,则使用当前时间.  
格式是一个字符串,其中以下字符有特殊意义:  
U 替换成从一个起始时间(好象是1970年1月1日)以来的秒数  
Y 替换成4位的年号.  
y 替换成2位的年号.  
F 替换成月份的英文全称.  
M 替换成月份的英文简称.  
m 替换成月份数.  
z 替换成从当年1月1日以来的天数.  
d 替换成日数.  
l 替换成星期几的英文全称.  
D 替换成星期几的英文简称.  
w 替换成星期几(数字).  
H 替换成小时数(24小时制).  
h 替换成小时数(12小时制).  
i 替换成分钟数.  
s 替换成秒数.  
A 替换成"AM"或"PM".  
a 替换成"am"或"pm".  
S 替换成序数字后缀,例如:"st","nd","rd","th".  

函数返回作过了替换的格式串.  

(2)getdate(时间)  

返回一个哈希表,各下标是:  
"seconds" -- 秒数  
"minutes" -- 分数  
"hours" -- 小时数  
"mday" -- 日数  
"mon" -- 月份数  
"year" -- 年号  
"yday" -- 1月1日以来的天数  
"weekday" -- 星期几,英文全称  
"month" -- 月份,英文全名  

(3)gmdate  

与date类似,但先将时间转换成格林威治标准时.  

(4)mktime  

用法:  
mktime(小时数,分数,秒数,月,日,年);  

返回一个时间值,可用于其他函数.  

(5)time  

用法:  
time();  

返回1970年1月1日零点以来的秒数.  

(6)microtime  

用法:  
microtime();  

返回一个字符串,用空格分成两部分,后一部分相当于time()  
的返回值,前一部分是微秒数.  

(7)checkdate  

用法:  
checkdate(月,日,年);  
返回逻辑真或逻辑假.  

如果:  
[1]年在1900和32767之间(包括1900与32767);  
[2]月在1到12之间;  
[3]日在该月的允许日数范围内(考虑了闰年);  
则返回逻辑真.  

(8)set_time_limit  

用法:  
set_time_limit(秒数);  
规定从该句运行时起程序必须在指定秒数内运行结束,  
超时则程序出错退出.