您的位置:首页 > 编程语言 > PHP开发

PHP常用函数

2012-07-06 18:23 281 查看
isset函数是检测变量是否设置。

格式:bool isset ( mixed var [, mixed var [, ...]] )

返回值:

若变量不存在则返回 FALSE

若变量存在且其值为NULL,也返回 FALSE

若变量存在且值不为NULL,则返回 TURE

同时检查多个变量时,每个单项都符合上一条要求时才返回 TRUE,否则结果为 FALSE

如果已经使用 unset() 释放了一个变量之后,它将不再是 isset()。若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE。同时要注意的是一个 NULL 字节("\0")并不等同于 PHP 的 NULL 常数。

警告: isset() 只能用于变量,因为传递任何其它参数都将造成解析错误。若想检测常量是否已设置,可使用 defined() 函数。

<?php
$var = '';if (isset($var)) {print "This var is set set so I will print.";}
// 在后边的例子中,我们将使用 var_dump函数 输出 isset() 的返回值。
$a = "test";
$b = "anothertest";
var_dump( isset($a) ); // TRUE
var_dump( isset ($a, $b) ); // TRUE
unset ($a);
var_dump( isset ($a) ); // FALSE
var_dump( isset ($a, $b) ); // FALSE
$foo = NULL;
var_dump( isset ($foo) ); // FALSE
?>


<?php
$a = array ('test' => 1, 'hello' => NULL);
var_dump( isset ($a['test') ); // TRUE
var_dump( isset ($a['foo') ); // FALSE
var_dump( isset ($a['hello') ); // FALSE
// 'hello' 等于 NULL,所以被认为是未赋值的。
// 如果想检测 NULL 键值,可以试试下边的方法。
var_dump( array_key_exists('hello', $a) ); // TRUE
?>


获取当前时间
date_default_timezone_set('PRC');

//获取当前时间比格式化
echo date('Y-m-d H:i:s',time());

//获取当前时间戳
echo time();


日期加减法
//将时间点转换为时间戳
$date = strtotime (date("Y-m-d"));
//输出一天前的日期,在时间戳上减去一天的秒数
$day = date ( 'Y-m-d', $date + 1 * 24 * 60 * 60 );


读取文件,支持页面抓取
file_get_contents($url);


取整,非四舍五入
floor(3.5)


foreach用法
foreach ( $rs as $k => $v ) {
echo $k.' '.$v;
}


foreach ($arr as $value){
echo $value;
}


分割字符串
$str = "Hello world. It's a beautiful day.";
print_r (explode(" ",$str));


输出
Array
(
[0] => Hello
[1] => world.
[2] => It's
[3] => a
[4] => beautiful
[5] => day.
)


分页算法,计算总页数
$total_page=floor(($total_records+$page_size-1)/$page_size)

上传文件
<form name="form1" action="index.php" method="post" enctype="multipart/form-data">
<input type="file" name="pic"/>
</form>
//获取文件类型
$filetype = $_FILES['pic']['type'];
//获取临时文件名
$temp = $_FILES['pic']['tmp_name'];
//判断文件类型是否为图片
if($filetype == 'image/gif' || $filetype == 'image/jpeg' || $filetype == 'image/pjpeg'){
//重命名并保持文件
$suffix_arr = explode('.',$_FILES["pic"]["name"]);
$count_arr = count($suffix_arr);
$suffix = $suffix_arr[$count_arr-1];
$path = "upload/" . date('YmdHis',time()) . '.' . $suffix;
move_uploaded_file($_FILES["pic"]["tmp_name"],$path);
}else{
echo '只能上传图片';
}


获取文件绝对路径
echo __FILE__ ; // 取得当前文件的绝对地址,结果:D:\www\test.php
echo dirname(__FILE__); // 取得当前文件所在的绝对目录,结果:D:\www\
echo dirname(dirname(__FILE__)); //取得当前文件的上一层目录名,结果:D:\


SESSION
SESSION可存放数组及对象

strip_tags() 函数

strip_tags() 函数剥去 HTML、XML 以及 PHP 的标签。

echo strip_tags("Hello <b>world!</b>");

sprintf() 函数

语法

sprintf(format,arg1,arg2,arg++)

参数 描述

format 必需。转换格式。

arg1 必需。规定插到 format 字符串中第一个 % 符号处的参数。

arg2 可选。规定插到 format 字符串中第二个 % 符号处的参数。

arg++ 可选。规定插到 format 字符串中第三、四等等 % 符号处的参数。

说明

参数 format 是转换的格式,以百分比符号 ("%") 开始到转换字符结束。下面的可能的 format 值:

%% - 返回百分比符号

%b - 二进制数

%c - 依照 ASCII 值的字符

%d - 带符号十进制数

%e - 可续计数法(比如 1.5e+3)

%u - 无符号十进制数

%f - 浮点数(local settings aware)

%F - 浮点数(not local settings aware)

%o - 八进制数

%s - 字符串

%x - 十六进制数(小写字母)

%X - 十六进制数(大写字母)

arg1, arg2, ++ 等参数将插入到主字符串中的百分号 (%) 符号处。该函数是逐步执行的。在第一个 % 符号中,插入 arg1,在第二个 % 符号处,插入 arg2,依此类推。

<?php
$str = "Hello";
$number = 123;
$txt = sprintf("%s world. Day number %u",$str,$number);
echo $txt;
?>
输出

Hello world. Day number 123

<?php
$number = 123;
$txt = sprintf("%.2f",$number);
echo $txt;
?>
输出

123.00

microtime()

microtime() 函数返回当前 Unix 时间戳和微秒数。

如果调用时不带可选参数,本函数以 "msec sec" 的格式返回一个字符串,其中 sec 是自 Unix 纪元(0:00:00 January 1, 1970 GMT)起到现在的秒数,msec 是微秒部分。字符串的两部分都是以秒为单位返回的。

<?php
echo(microtime());
?>
输出

0.25139300 1138197510
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: