PHP函数汇集 常用的函数 PHP易出错的函数

来源:互联网 发布:淘宝客服培训心得 编辑:程序博客网 时间:2024/05/18 03:44

Abs: 取得绝对值。
Acos: 取得反余弦值。
ada_afetch: 取得资料库的传回列。
ada_autocommit: 开关自动更动功能。
ada_close: 关闭 Adabas D 连结。
ada_commit: 更动 Adabas D 资料库。
ada_connect: 连结至 Adabas D 资料库。
ada_exec: 执行 SQL 指令。
ada_fetchrow: 取得传回一列。
ada_fieldname: 取得栏位名称。
ada_fieldtype: 取得栏位资料形态。
ada_freeresult: 释出传回资料的记忆体。
ada_numfields: 取得栏位数目。
ada_numrows: 取得传回列数目。
ada_result: 取得传回资料。
ada_resultall: 传回 HTML 表格资料。
ada_rollback: 撤消当前交易。
AddSlashes: 字串加入斜线。
apache_lookup_uri: 获得所有的 URI 相关资讯。
apache_note: 获得及设定阿帕契伺服器的请求纪录。
array: 建立一个新的阵列。
array_walk: 让使用者自订函数能处理阵列中的每一个元素。
arsort: 将阵列的值由大到小排序。
Asin: 取得反正弦值。
asort: 将阵列的值由小到大排序。
aspell_check: 检查一个单字。
aspell_check-raw: 检查一个单字,即使拼错也不改变或修正。
aspell_new: 载入一个新的字典。
aspell_suggest: 检查一个单字,并提供拼字建议。
Atan: 取得反正切值。
Atan2: 计算二数的反正切值。
base64_decode: 将 BASE64 编码字串解码。
base64_encode: 将字串以 BASE64 编码。
basename: 传回不含路径的档案字串。
base_convert: 转换数字的进位方式。
bcadd: 将二个高精确度数字相加。
bccomp: 比较二个高精确度数字。
bcdiv: 将二个高精确度数字相除。
bcmod: 取得高精确度数字的余数。
bcmul: 将二个高精确度数字相乘。
bcpow: 求一高精确度数字次方值。
bcscale: 设定程式中所有 BC 函式库的内定小数点位数。
bcsqrt: 求一高精确度数字的平方根。
bcsub: 将二个高精确度数字相减。
bin2hex: 二进位转成十六进位。
BinDec: 二进位转成十进位。
Ceil: 计算大于指定数的最小整数。
chdir: 改变目录。
checkdate: 验证日期的正确性。
checkdnsrr: 检查指定网址的 DNS 记录。
chgrp: 改变档案所属的群组。
chmod: 改变档案的属性。
Chop: 去除连续空白。
chown: 改变档案的拥有者。
Chr: 传回序数值的字元。
chunk_split: 将字串分成小段。
clearstatcache: 清除档案状态快取。
closedir: 关闭目录 handle。
closelog: 关闭系统纪录。
connection_aborted: 若连结中断则传回 true。
connection_status: 取得连线状态。
connection_timeout: 若超过 PHP 程式执行时间则传回 true。
convert_cyr_string: 转换古斯拉夫字串成其它字串。
copy: 复制档案。
Cos: 余弦计算。
count: 计算变数或阵列中的元素个数。
crypt: 将字串用 DES 编码加密。
current: 传回阵列中目前的元素。
date: 将伺服器的时间格式化。
dbase_add_record: 加入资料到 dBase 资料表。
dbase_close: 关闭 dBase 资料表。
dbase_create: 建立 dBase 资料表。
dbase_delete_record: 删除 dBase 资料表的资料。
dbase_get_record: 取得 dBase 资料表的资料。
dbase_numfields: 取得 dBase 资料表的栏位数。
dbase_numrecords: 取得 dBase 资料表的列数。
dbase_open: 开启 dBase 资料表。
dbase_pack: 清理 dBase 资料表。
dba_close: 关闭资料库。
dba_delete: 删除指定资料。
dba_exists: 检查键是否存在。
dba_fetch: 取回指定资料。
dba_firstkey: 取回首笔键值。
dba_insert: 加入资料。
dba_nextkey: 取回下笔键值。
dba_open: 开启资料库连结。
dba_optimize: 最佳化资料库。
dba_popen: 开启并保持资料库连结。
dba_replace: 更动或加入资料。
dba_sync: 资料库同步化。
dblist: 取得 DBM 的资讯。
dbmclose: 关闭 DBM 资料库。
dbmdelete: 删除指定资料。
dbmexists: 检查键是否存在。
dbmfetch: 取回指定资料。
dbmfirstkey: 取回首笔键名。
dbminsert: 加入资料。
dbmnextkey: 取回下笔键值。
dbmopen: 开启 DBM 资料库连结。
dbmreplace: 更动或加入资料。
debugger_off: 关闭内建的 PHP 除错器。
debugger_on: 使用内建的 PHP 除错器。
DecBin: 十进位转二进位。
DecHex: 十进位转十六进位。
DecOct: 十进位转八进位。
delete: 无用的项目。
die: 输出讯息并中断 PHP 程式。
dir: 目录类别物件。
dirname: 取得路径中的目录名。
diskfreespace: 取得目录所在的剩余可用空间。
dl: 载入 PHP 扩充模组。
doubleval: 变数转成倍浮点数型态。
each: 传回阵列中下一个元素的索引及值。
easter_date: 计算复活节日期。
easter_days: 计算复活节与三月廿一日之间日期数。
echo: 输出字串。
empty: 判断变数是否已设定。
end: 将阵列的内部指标指到最后的元素。
ereg: 字串比对剖析。
eregi: 字串比对剖析,与大小写无关。
eregi_replace: 字串比对剖析并取代,与大小写无关。
ereg_replace: 字串比对剖析并取代。
error_log: 送出一个错误讯息。
error_reporting: 设定错误讯息回报的等级。
escapeshellcmd: 除去字串中的特殊符号。
eval: 将值代入字串之中。
exec: 执行外部程式。
exit: 结束 PHP 程式。
Exp: 自然对数 e 的次方值。
explode: 切开字串。
extract: 汇入阵列到符号表。
fclose: 关闭已开启的档案。
FDF_close: 关闭 FDF 文件。
FDF_create: 建立新的 FDF 文件。
FDF_get_file: 取得 /F 键的值。
FDF_get_status: 取得 /STATUS 键的值。
FDF_get_value: 取得栏位的值。
FDF_next_field_name: 下一栏位的名称。
FDF_open: 打开 FDF 文件。
FDF_save: 将 FDF 文件存档。
FDF_set_ap: 设定显示栏位。
FDF_set_file: 设定 /F 键。
FDF_set_status: 设定 /STATUS 键。
FDF_set_value: 设定栏位的值。
feof: 测试档案指标是否指到档尾。
fgetc: 取得档案指标所指的字元。
fgetcsv: 取得档案指标所指行,并剖析 CSV 栏位。
fgets: 取得档案指标所指的行。
fgetss: 取得档案指标所指的行,并去掉 HTML 语言标记。
file: 将档案全部读入阵列变数中。
fileatime: 取得档案最后的存取时间。
filectime: 取得档案最后的改变时间。
filegroup: 取得档案所属的群组。
fileinode: 取得档案的 inode 值。
filemtime: 取得档案最后的修改时间。
fileowner: 取得档案的拥有者。
fileperms: 取得档案的权限设定。
filepro: 读取 FilePro Map 档。
filepro_fieldcount: 取得栏位数目。
filepro_fieldname: 取得栏位名称。
filepro_fieldtype: 取得栏位型态。
filepro_fieldwidth: 取得栏位宽度。
filepro_retrieve: 取得指定储存格资料。
filepro_rowcount: 取得列数目。
filesize: 获得档案的大小。
filetype: 获得档案的型态。
file_exists: 检查档案是否存在。
flock: 锁住档案。
Floor: 计算小于指定数的最大整数。
flush: 清出输出缓冲区。
fopen: 开启档案或者 URL。
fpassthru: 输出所有剩余资料。
fputs: 写到档案指标。
fread: 位元组的方式读取档案。
FrenchToJD: 将法国共和历法转换成为凯撒日计数。
fseek: 移动档案指标。
fsockopen: 打开网路的 Socket 连结。
ftell: 取得档案读写指标位置。
ftp_cdup: 回上层目录。
ftp_chdir: 改变路径。
ftp_connect: 开启 FTP 连结。
ftp_delete: 将档案删除。
ftp_fget: 下载档案,并存在已开的档中。
ftp_fput: 上传已开启档案。
ftp_get: 下载档案。
ftp_login: 登入 FTP 伺服器。
ftp_mdtm: 获得指定档案的最后修改时间。
ftp_mkdir: 建新目录。
ftp_nlist: 列出指定目录中所有档案。
ftp_pasv: 切换主被动传输模式。
ftp_put: 上传档案。
ftp_pwd: 取得目前所在路径。
ftp_quit: 关闭 FTP 连线。
ftp_rawlist: 详细列出指定目录中所有档案。
ftp_rename: 将档案改名。
ftp_rmdir: 删除目录。
ftp_size: 获得指定档案的大小。
ftp_systype: 显示伺服器系统。
function_exists: 查核函式是否已定义。
fwrite: 二进位位元方式写入档案。
getallheaders: 获得所有 HTTP 变数值。
getdate: 获得时间及日期资讯。
getenv: 取得系统的环境变数
gethostbyaddr: 传回机器名称。
gethostbyname: 传回 IP 网址。
gethostbynamel: 传回机器名称的所有 IP。
GetImageSize: 取得图片的长宽。
getlastmod: 传回该网页的最后修改时间。
getmxrr: 取得指定网址 DNS 记录之 MX 栏位。
getmyinode: 传回该网页的 inode 值。
getmypid: 传回 PHP 的行程代号。
getmyuid: 传回 PHP 的使用者代码。
getrandmax: 乱数的最大值。
getrusage: 传回系统资源使用率。
gettimeofday: 取得目前时间。
gettype: 取得变数的型态。
get_cfg_var: 取得 PHP 的设定选项值。
get_current_user: 取得 PHP 行程的拥有者名称。
get_magic_quotes_gpc: 取得 PHP 环境变数 magic_quotes_gpc 的值。
get_magic_quotes_runtime: 取得 PHP 环境变数 magic_quotes_runtime 的值。
get_meta_tags: 抽出档案所有 meta 标记的资料。
gmdate: 取得目前与 GMT 差后的时间。
gmmktime: 取得 UNIX 时间戳记的格林威治时间。
GregorianToJD: 将格里高里历法转换成为凯撒日计数。
gzclose: 关闭压缩档。
gzeof: 判断是否在压缩档尾。
gzfile: 读压缩档到阵列中。
gzgetc: 读压缩档中的字元。
gzgets: 读压缩档中的字串。
gzgetss: 读压缩档中的字串,并去掉 HTML 指令。
gzopen: 开启压缩档。
gzpassthru: 解压缩指标后全部资料。
gzputs: 资料写入压缩档。
gzread: 压缩档读出指定长度字串。
gzrewind: 重设压缩档指标。
gzseek: 设压缩档指标至指定处。
gztell: 取得压缩档指标处。
gzwrite: 资料写入压
////////////
这几天正在学习PHP,网上查阅了大量资料,把个人觉得比较常用或者容易出错的函数做个汇总:
 
1.配置文件相关函数
  get_var_cfg() 取的值是配置文件中的值
  ini_get 则取的当前值
  eg:
   ini_set('safe_mode', 'on');  // 改变 safe_mod的当前值,当前的默认值是off
   print get_cfg_var('safe_mod'); // 返回 off
   print ini_get('safe_mod');  // 返回 on
 
 
  set_magic_quotes_runtime():
  设置magic_quotes_runtime值. 0=关闭.1=打开.默认状态是关闭的.可以通过 echo phpinfo();
  查看magic_quotes_runtime
  get_magic_quotes_gpc():  查看magic_quotes_gpc值.0=关闭.1=打开.
  get_magic_quotes_runtime():查看magic_quotes_runtime值。0=关闭.1=打开.
  (magic_quotes_gpc的设定值将会影响通过Get/Post/Cookies获得的数据
  magic_quotes_runtime的设定值将会影响从文件中读取的数据或从数据库查询得到的数据)
 
 
2.@符号在PHP中的作用
  屏蔽错误或者告警信息的专用符号
 
3.PHP的全局变量
$GLOBALS
包含一个引用指向每个当前脚本的全局范围内有效的变量。该数组的键名为全局变量的名称。从 PHP 3 开始存在 $GLOBALS 数组。

$_SERVER
变量由 web 服务器设定或者直接与当前脚本的执行环境相关联。类似于旧数组 $HTTP_SERVER_VARS 数组(依然有效,但反对使用)。

$_GET
经由 URL 请求提交至脚本的变量。类似于旧数组 $HTTP_GET_VARS 数组(依然有效,但反对使用)。

$_POST
经由 HTTP POST 方法提交至脚本的变量。类似于旧数组 $HTTP_POST_VARS 数组(依然有效,但反对使用)。

$_COOKIE
经由 HTTP Cookies 方法提交至脚本的变量。类似于旧数组 $HTTP_COOKIE_VARS 数组(依然有效,但反对使用)。

$_FILES
经由 HTTP POST 文件上传而提交至脚本的变量。类似于旧数组 $HTTP_POST_FILES 数组(依然有效,但反对使用)。详细信息请参阅 POST 方法上传。

$_ENV
执行环境提交至脚本的变量。类似于旧数组 $HTTP_ENV_VARS 数组(依然有效,但反对使用)。

$_REQUEST
经由 GET,POST 和 COOKIE 机制提交至脚本的变量,因此该数组并不值得信任。所有包含在该数组中的变量的存在与否以及变量的顺序均按照 php.ini 中的 variables_order 配置指示来定义。此数组在 PHP 4.1.0 之前没有直接对应的版本。参见 import_request_variables()。
自 PHP 4.3.0 起,$_FILES 中的文件信息不再存在于 $_REQUEST 中。
 
注意: 当运行于命令行模式时,此数组将不会包含 argv 和 argc 条目;它们已经存在于数组 $_SERVER 中。

$_SESSION
当前注册给脚本会话的变量。类似于旧数组 $HTTP_SESSION_VARS 数组(依然有效,但反对使用)。详细信息,请参照 Session 处理函数章节。
 
 
5.魔术常量
PHP 向它运行的任何脚本提供了大量的预定义常量。不过很多常量都是由不同的扩展库定义的,只有在加载了这些扩展库时才会出现,或者动态加载后,或者在编译时已经包括进去了。
有五个魔术常量根据它们使用的位置而改变。例如 __LINE__ 的值就依赖于它在脚本中所处的行来决定。这些特殊的常量不区分大小写,如下:

__LINE__                  文件中的当前行号。
 
__FILE__                   文件的完整路径和文件名。如果用在包含文件中,则返回包含文件名。自 PHP 4.0.2 起,__FILE__ 总是包含一个绝对路径,而在此之前的版本有时会包含一个相对路径。
 
__FUNCTION__         函数名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该函数被定义时的名字(区分大小写)。在 PHP 4 中该值总是小写字母的。 

__CLASS__               类的名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该类被定义时的名字(区分大小写)。在 PHP 4 中该值总是小写字母的。

__METHOD__            类的方法名(PHP 5.0.0 新加)。返回该方法被定义时的名字(区分大小写)。
 
//////////////////////////

if ($a == $b) return 0;
return ($a > $b) ? -1 : 1;
}
$a = array(3,2,5,6,1);
usort($a, cmp);
while(list($key,$value) = each($a)) {
echo "$key: $value/n";
}


 


This example would display: 0: 6 1: 5 2: 3 3: 2 4: 1 Obviously in this trivial case the rsort() function would be more appropriate.

BC (Arbitrary Precision) Functions


 

函数bcadd()
描述:
Add two arbitrary precision numbers
string bcadd (string left operand, string right operand, int [ scale ]); 左面的字符加右面的字符,返回一个字符。


 

函数bccomp()
描述:
int bccomp (string left operand, string right operand, int [ scale ]);
左面的字符和右面的字符进行比较,如果相等的话返回0,如果左面的比右面的长返回+1,右面的比左面的长返回-1


 

函数bcdiv()
描述:
Divide two arbitrary precision numbers
string bcdiv (string left operand, string right operand, int [ scale ]); 将左面的字符串以右面的字符串为标准分开


 

函数bcmod()
描述:
Get modulus of an arbitrary precision number
string bcmod (string left operand, string modulus);
用右面的modulus操作左面的字符串


 

函数bcmul()
描述:
Multiply two arbitrary precision number
string bcmul (string left operand, string right operand, int [ scale ]);
Multiply the left operand by the right operand and returns the result. The optional scale sets the number of digits
after the decimal place in the result.


 

函数bcpow()
描述:
Raise an arbitrary precision number to another.
Raise x to the power y . The scale can be used to set the number of digits after the decimal place in the result.


 

函数bcscale()
描述:
Set default scale parameter for all bc math functions.
string bcscale (int scale);
This function sets the default scale parameter for all subsequent bc math functions that do not explicitly specify a scale
parameter


 

函数bcsqrt()
描述;
string bcsqrt (string operand, int scale);
返回字符的平方根


 

函数bcsub()
描述:
string bcsub (string left operand, string right operand, int [ scale ]);
将右面的字符减去左面的字符


 

Calendar Functions日历功能


 

函数JDToGregorian()
描述:
string jdtogregorian (int julianday);
将Julian日历转换成Gregorian日历


 

函数GregorianToJD()
描述:
int gregoriantojd (int month, int day, int year);
将Gregorian日历转换成Julian日历


 

函数JDToJulian ()
描述:
string jdtojulian (int julianday);
将Julian Calendar转换Julian Day


 

函数JulianToJD ()
描述:
int juliantojd (int month, int day, int year);


 

函数JDToJewish ()
描述:
Converts a Julian Day Count to the Jewish Calendar
string jdtojewish (int julianday);


 

函数JewishToJD()
描述:
Converts a date in the Jewish Calendar to Julian Day Count
int jewishtojd (int month, int day, int year);


 

函数JDToFrench()
描述:
Converts a Julian Day Count to the French Republican Calendar
string jdtofrench (int month, int day, int year);


 

函数FrenchToJD()
描述:
Converts a date from the French Republican Calendar to a Julian Day Count int frenchtojd (int month, int day, int year);


 

函数JDMonthName ()
描述:
----------------------
2.截取一定长度的字符串
注:该函数对gb2312使用有效
function wordscut($string, $length ,$sss=0) {
if(strlen($string) > $length) {
if($sss){
$length=$length - 3;
$addstr=@# ...@#;
}
for($i = 0; $i < $length; $i++) {
if(ord($string[$i]) > 127) {
$wordscut .= $string[$i].$string[$i + 1];
$i++;
} else {
$wordscut .= $string[$i];
}
}
return $wordscut.$addstr;
}
return $string;
}
3.取得客户端ip地址
function getip(){
if (getenv("http_client_ip") && strcasecmp(getenv("http_client_ip"), "unknown"))
$ip = getenv("http_client_ip");
else if (getenv("http_x_forwarded_for") && strcasecmp(getenv("http_x_forwarded_for"), "unknown"))
$ip = getenv("http_x_forwarded_for");
else if (getenv("remote_addr") && strcasecmp(getenv("remote_addr"), "unknown"))
$ip = getenv("remote_addr");
else if (isset($_server[@#remote_addr@#]) && $_server[@#remote_addr@#] && strcasecmp($_server[@#remote_addr@#], "unknown"))
$ip = $_server[@#remote_addr@#];
else
$ip = "unknown";
return($ip);
}
4.创建相应的文件夹
function createdir($dir=@#@#)
{
if (!is_dir($dir))
{
$temp = explode(@#/@#,$dir);
$cur_dir = @#@#;
for($i=0;$i<count($temp);$i++)
{
$cur_dir .= $temp[$i].@#/@#;
if (!is_dir($cur_dir))
{
@mkdir($cur_dir,0777);
}
}
}
}
5.判断邮箱地址
function checkemail($inaddress)
{
return (ereg("^([a-za-z0-9_-])+@([a-za-z0-9_-])+(/.[a-za-z0-9_-])+",$inaddress));
}
6.跳转
function gotourl($message=@#@#,$url=@#@#,$title=@#@#)
{
$html ="<html><head>";
if(!empty($url))
$html .="<metahttp-equiv=@#refresh@# content=/"3;url=@#".$url."@#/">";
$html .="<linkhref=@#../templates/style.css@# type=text/css rel=stylesheet>";
$html .="</head><body><br><br><br><br>";
$html .="<tablecellspacing=@#0@#cellpadding=@#0@#border=@#1@#width=@#450@#align=@#center@#>";
$html .="<tr><tdbgcolor=@##ffffff@#>";
$html .="<tableborder=@#1@#cellspacing=@#1@#cellpadding=@#4@#width=@#100%@#>";
$html .="<trclass=@#m_title@#>";
$html .="<td>".$title."</td></tr>";
$html .="<trclass=@#line_1@#><tdalign=@#center@#height=@#60@#>";
$html .="<br>".$message."<br><br>";
if (!empty($url))
$html .="系统将在3秒后返回<br>如果您的浏览器不能自动返回,请点击[<a href=".$url." target=_self>这里</a>]进入";
else
$html .="[<a href=@##@#=@#history.go(-1)@#>返回</a>]";
$html .="</td></tr></table></td></tr></table>";
$html .="</body></html>";
echo $html;
exit;
}
7.分页(两个函数配合使用)
function getpage($sql,$page_size=20)
{
global $page,$totalpage,$sums; //out param
$page = $_get["page"];
//$eachpage = $page_size;
$pagesql = strstr($sql," from ");
$pagesql = "select count(*) as ids ".$pagesql;
$result = mysql_query($pagesql);
if($rs = mysql_fetch_array($result)) $sums = $rs[0];
$totalpage = ceil($sums/$page_size);
if((!$page)||($page<1)) $page=1;
$startpos = ($page-1)*$page_size;
$sql .=" limit $startpos,$page_size ";
return $sql;
}
function showbar($string="")
{
global $page,$totalpage;
$out="共<font ".$totalpage."color=@#red@#><b>".$totalpage."</b></font>页 ";
$linknum =4;
$start = ($page-round($linknum/2))>0 ? ($page-round($linknum/2)) : "1";
$end = ($page+round($linknum/2))<$totalpage ? ($page+round($linknum/2)) : $totalpage;
$prestart=$start-1;
$nextend=$end+1;
if($page<>1)
$out .= "<ahref=@#?page=1&&".$string."@#title=第一页>第一页</a> ";
if($start>1)
$out.="<ahref=@#?page=".$prestart."@# title=上一页>..<<</a> ";
for($t=$start;$t<=$end;$t++)
{
$out .= ($page==$t) ? "<font [".$t."]color=@#red@#><b>[".$t."]</b></font> " : "<a$thref=@#?page=$t&&".$string."@#>$t</a> ";
}
if($end<$totalpage)
$out.="<ahref=@#?page=".$nextend."&&".$string."@# title=下一页>>>..</a>";
if($page<>$totalpage)
$out .= " <ahref=@#?page=".$totalpage."&&".$string."@# title=最后页>最后页</a>";
return $out;
}
8.获取新插入数据的id
<?
mysql_insert_id();
?>
 

tags:php函数 
/////////////
PHP取整函数

floor -- 舍去法取整
说明
float floor ( float value )
返回不大于 value 的下一个整数,将 value 的小数部分舍去取整。floor() 返回的类型仍然是 float,因为 float 值的范围通常比 integer 要大。

例子 1. floor() 例子

<?php
echo floor(4.3);     // 4
echo floor(9.999); // 9
?>


round -- 对浮点数进行四舍五入
说明
float round ( float val [, int precision] )
返回将 val 根据指定精度 precision(十进制小数点后数字的数目)进行四舍五入的结果。precision 也可以是负数或零(默认值)。

例子 1. round() 例子

<?php
echo round(3.4);             // 3
echo round(3.5);             // 4
echo round(3.6);             // 4
echo round(3.6, 0);         // 4
echo round(1.95583, 2);     // 1.96
echo round(1241757, -3); // 1242000
echo round(5.045, 2);     // 5.05
echo round(5.055, 2);     // 5.06
?>

intval---对变数转成整数型态


-----------
对数据进行分页显示

function Make_Page(&$QuerySql, $array = array(10, 20))
{
    // ---------------设置分页的GET变量---------------------
    // --这两处参数是程序自动加上的,顺序为"$Page_Rows=90&ActionPage=12"
    $Aget = 'ActionPage'; //当前页参数
    $Pget = 'Page_Rows'; //每页显示数
    $PR_str = "&{$Pget}=";
    $AP_str = "&{$Aget}=";
    // ---------------得到记录总数-------------------------
    $res = @mysql_query($QuerySql);
    $RecordNum = @mysql_num_rows($res);
    @mysql_free_result($res);
    // ---------------得到每页显示数和当前显示的页数---------
    $page = $_GET[$Aget] == '' ? 1 : $_GET[$Aget];
    $page_rows = $_GET[$Pget] == '' ? $array[0] : $_GET[$Pget];
    // ---------------得到设置後的总页数-----------------------
    if ($RecordNum > 0)
    {
        if ($RecordNum < $page_rows)
        {
            $page_count = 1;
        }
        else if ($RecordNum % $page_rows)
        {
            $page_count = (int)($RecordNum / $page_rows) + 1;
        }
        else
        {
            $page_count = $RecordNum / $page_rows;
        }
    }
    else
    {
        $page_count = 0;
    }
    // ---------------处理分页时的参数-------------------------
    $getval = '?';
    $str = $_SERVER["QUERY_STRING"]; //得到URL'?'后的字符串
    if ($str != "")
    {
        $tmp_str = strstr($str, $Pget); //得到分页参数字符串
        if ($tmp_str != '') // 加了分页参数
            {
                $getval .= str_replace($tmp_str, '', $str); //去除分面参数
        }
        else $getval .= $str;
    }
    if ($getval[strlen($getval)-1] == '&') // 去掉最后的字符'&'
        {
            $getval = substr($getval, 0, strlen($getval)-1);
    }
    // -------------改变SQL语句--------------------------------
    $QuerySql .= " limit " . ($page-1) * $page_rows . ", $page_rows";
    // -------------生成可选的每页显示数---------------------------
    $page_string = '所有 <span style="color:#FF0000">' . $RecordNum . '</span>项';
    $page_string .= ',共 <span style="color:#FF0000">' . $page_count . '</span>页,每页显示 ';
    // _____________生成可选的每页数连接-------------------------
    if (is_array($array))
    {
        foreach($array as $val)
        {
            $value = $getval . $PR_str . $val; //改变每页显示数是不加分页数
            if ($getval == '?') $value = str_replace('?&', '?', $value);
            if ($val == $page_rows)
                $page_string .= '[<span style="color:#FF0000"><strong>' . $val . '</strong></span>]&nbsp';
            // $page_string .= '<a href="'.$value.'" title="更改每页显示为'.$val.'项"><strong>'.$val.'</strong></a& gt;&nbsp';
            else $page_string .= '<a href="' . $value . '" title="更改每页显示为' . $val . '项">' . $val . '</a>&nbsp';
        }
        $page_string .= '项 ';
    }
    // -------------生成翻页链接-------------------------------
    $value = $getval . $PR_str . $page_rows . $AP_str;
    if ($getval == '?') $value = str_replace('?&', '?', $value);
    /* 图片的HTML代码
              <font face="Webdings">9</font>  //首页
                  <font face="Webdings">7</font>  //上一页
                  <font face="Webdings">8</font>  //下一页
                  <font face="Webdings">:</font>  //尾页
           */
    if ($page == 1)
        $page_string .= '<font face="Webdings">9</font> <font face="Webdings">7</font> ';
    else
    {
        $page_string .= '<a href="' . $value . '1" title="首页"><font face="Webdings">9</font></a> ';
        $page_string .= '<a href="' . $value . ($page-1) . '" title="上一页"><font face="Webdings">7</font></a> ';
    }

    if (($page == $page_count) || ($page_count == 0)) // --显示最后一页
        {
            $page_string .= '<font face="Webdings">8</font> <font face="Webdings">:</font> ';
    }
    else
    {
        $page_string .= '<a href="' . $value . ($page + 1) . '" title="下一页"><font face="Webdings">8</font></a> ';
        $page_string .= '<a href="' . $value . $page_count . '" title="尾页"><font face="Webdings">:</font></a> ';
    }
    // -----------生成可选分页数---------------------------------
    $page_string .= "转到<select name=/"topage/" size=/"1/" onchange=/"javascript:location.reload(this.value);/"> /n/r";
    for($i = 1; $i <= $page_count; $i++)
    {
        if ($i == $page)
            $page_string .= '<option value="' . $value . $i . '" selected="selected">' . "第{$i}页</option>/n";
        else $page_string .= '<option value="' . $value . $i . '">' . "第{$i}页</option>/n";
    }
    $page_string .= '</select>';
    return $page_string;
}
调用
$query='select * from test_table where 1'; //test_table表中数据最好多一点,效果更明显
   $pagestr=Make_Page($query);
   mysql_query($query);
   //-----其它处理------
   //------------------
   echo  $pagestr;
 

 

例子intval()

<?php

echo intval(4.3);    //4

echo intval(4.6);  // 4 

?>


Returns a month name
string jdmonthname (int julianday, int mode);
Mode Meaning
0 Gregorian - apreviated
1 Gregorian
2 Julian - apreviated
3 Julian
4 Jewish
5 French Republican


 

函数JDDayOfWeek ()
描述:
Returns the day of the week
mixed jddayofweek (int julianday, int mode);
Mode Meaning
0 returns the day number as an int (0=sunday, 1=monday, etc)
1 returns string containing the day of week (english-gregorian)
2 returns a string containing the abreviated day of week (english-gregorian)

---------
sprintf
将字符串格式化。

语法: string sprintf(string format, mixed [args]...);

返回值: 字符串

函数种类: 资料处理

 


内容说明


本函数用来将字符串格式化。参数 format 是转换的格式,以百分比符号 % 开始到转换字符为止。而在转换的格式间依序包括了


填空字符。0 的话表示空格填 0;空格是默认值,表示空格就放着。
对齐方式。默认值为向右对齐,负号表向左对齐。
字段宽度。为最小宽度。
精确度。指在小数点后的浮点数位数。
类型,见下表 % 印出百分比符号,不转换。
b 整数转成二进位。
c 整数转成对应的 ASCII 字符。
d 整数转成十进位。
f 倍精确度数字转成浮点数。
o 整数转成八进位。
s 整数转成字符串。
x 整数转成小写十六进位。
X 整数转成大写十六进位。

 


使用范例


<?
$money1 = 68.75;
$money2 = 54.35;
$money = $money1 + $money2;
// 此时变量 $money 值为 "123.1";
$formatted = sprintf ("%01.2f", $money);
// 此时变量 $ formatted 值为 "123.10"
?>
-----------------------------------------
首先必须保证时间的格式为:0000-00-00 00:00:00

以上的格式可以通过PHP里的date()函数得到:

$dateTimeStr = date("Y-m-d H:i:s");

完整的程序代码如下:

<?
$dateTimeStr = date("Y-m-d H:i:s");
echo $dateTimeStr;
echo"<br>";

//完整的程序代码如下:

function formatDateTime($time,$way)
{
//分解时间串,格式为:0000-00-00 00:00:00
$strDateTime = explode(" ",$time);
//分解年月日;
$strDate = explode("-",$strDateTime[0]);
$year = $strDate[0];
$month = $strDate[1];
$day   = $strDate[2];
//分解时分秒;
$strTime = explode(":",$strDateTime[1]);
$hour     = $strTime[0]+8;//注意此处+8的含义
$minute   = $strTime[1];
$second   = $strTime[2];
switch ($way)
{
case 1://得到年月日;
$strDateTime = $year."-".$month."-".$day;
break;
case 2://月日;
$strDateTime = $month."-".$day;
break;
case 3://得到时分;
$strDateTime = $hour.":".$minute.":".$second;
break;
}
return $strDateTime;
}

$dateTimeStr = date("Y-m-d H:i:s");
echo formatDateTime($dateTimeStr,3);
?>


附上PHP里的date()函数参数说明

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"

 

 

原创粉丝点击