查看文件是否变化会用修改时间来对比,此时会用到PHP filemtime() 函数。
filetime函数
定义和用法
filemtime() 函数返回文件内容上次的修改时间。
若成功,则时间以 Unix 时间戳的方式返回。若失败,则返回 false。
语法
filemtime(filename)
参数 描述
filename 必需。规定要检查的文件。
说明
本函数返回文件中的数据块上次被写入的时间,即文件的内容上次被修改的时间。
例如:
<?php
echo filemtime("test.txt");
echo "Last modified: ".date("F d Y H:i:s.",filemtime("test.txt"));
//filemtime() 函数返回文件内容上次的UNIX修改时间。
//返回
//1139919766
//Last modified: February 14 2006 13:22:46.
?>在php编程中,遍历数组的方法很多,可以使用for语句、list、each、foreach这四个函数。
1,foreach遍历数组
在运用数组时,常常要遍历数组并获得各个键或者元素值。
php提供了一些专门遍历数组的函数。
先介绍foreach遍历数组函数的用法。
结构形式:
/* array_expression是要遍历的数组
as作用是将数组的值赋给$value
statement是后续语句
*/
例子:
<?php
/**
* foreach 遍历数组
* edit www.
*/
$color=array('white' => '白色' ,
'black' => '黑色' ,
'red' => '红色' ,
'green' => '绿色',
'yellow' => '黄色');
foreach( $color as $c) echo $c ."<br>";
?>
通过foreach除了可以获得元素的值,还可以获得键名,结构形式:
foreach ( array_expression as $key => $value ) statement
将以上实例中:
foreach( $color as $c) echo $c ."<br>";
修改为:
foreach( $color as $key => $c) echo $key.$c ."<br>";
2,each遍历数组
介绍另一个遍历数组的函数-each()。
用each()函数可以输出当前指针位置的键名和对应的元素值。
可以使用”0″或”key”来访问键名(标识符),用”1″或”value”访问标识符对应的值。
例子:
<?php
/**
* each 遍历数组
* edit by www.
*/
$languages=array(1=>"php",
5=>"html",
10=>"css");
$a=each($languages); /* 第一次遍历数组 */
echo $a[0] ."t";
echo $a[1] ."<br>";
$a=each($languages); /* 第二次遍历数组 */
echo $a[key] ."t";
echo $a[value];
?>
3,php用list、for遍历数组元素的示例参考
在php中,使用函数list,可以在遍历数组时一次赋给变量,通常和each()函数配合使用。
用list()函数访问each()返回的键和值很简单。
例子:
<?php
/**
* list遍历php数组
* edit by www.
*/
$date=array(1=>"Monday",
2=>"Tuesday",
3=>"Wednesday");
list($key,$value)=each($date); /* 遍历函数 */
echo "$key $value" ."<br>"; /* 输出第一个数组 */
$next=next($date); /* 指针后移 */
echo "$next";
?>
说明:
list()函数与array()函数相反,array()将一系列数据构造成数组,而list()则将数组拆分成数据。
下面再来看用for遍历数组的例子。
除了php预定义的一些遍历数组函数,还可以使用for语句的循环特性将数组遍历输出。
例子:
<?php
/**
* for循环遍历数组
* edit by www.
*/
$a[]=""; /* 定义数组 */
$a[]="xxx";
$a[]="com";
$a[]="www";
$s=count($a); /* 统计数组个数 */
for($i=0;$i<$s;$i++){ /* 遍历数组 */
echo $a[$i] ."<br>"; /* 显示数组 */
}
?>根据IP地址获取地理位置,如下:
<?php
/**
* 根据IP得到地理位置
* edit by www.
*/
function get_ip_place()
{
$ip=file_get_contents("http://fw.qq.com/ipaddress");
$ip=str_replace('"',' ',$ip);
$ip2=explode("(",$ip);
$a=substr($ip2[1],0,-2);
$b=explode(",",$a);
return $b;
}
?>
下面这个是用正则表达式来实现的,更简单明了,代码如下:
<?php
/**
* 根据IP地址取得地理位置
* edit by www.
*/
function get_ip_arr()
{
$ip=file_get_contents("http://fw.qq.com/ipaddress");
preg_match_all("/\"(.*)\"/",$ip,$arr);
return $arr;
}
//返回一个数组,包括地区、IP等信息,自行获取即可。
?>