PHP-创建文件
在您可以做任何一份档案,它已存在!在这一课您将学习如何建立一个档案使用PHP 。
广告Tizag.com
PHP的-制造混乱
在PHP中,某个文件创建使用的命令也被用来打开文件。这似乎有点混乱,但我们会努力澄清这一难题。
在PHP的打开功能是用来打开文件。然而,它也可以创建一个文件,如果它没有找到该文件中指定的函数调用。所以,如果你使用打开一个文件不存在,它将创建它,因为你打开该文件的书面或附加(更多关于这个版本) 。
PHP的-如何创建一个文件
在打开功能需要两个重要的信息,正常运行。首先,我们必须与供应的文件的名称,我们希望它打开。其次,我们必须告诉我们什么功能上做计划,与该文件(即从档案读取,写入信息等) 。
由于我们要创建一个文件,我们必须提供的文件名称和告诉PHP ,我们要写入档案。注:我们必须告诉PHP我们书面文件,否则它不会创建一个新的文件。
$ourFileName = "testFile.txt";
$ourFileHandle = fopen($ourFileName, 'w') or die("can't open file");
fclose($ourFileHandle);
$ ourFileName = “ testFile.txt ” ;
在这里,我们创造的名称的文件, “ testFile.txt ” ,并储存到一个PHP字符串变量$ ourFileName 。
$ ourFileHandle =打开( $ ourFileName , '瓦特' )或死亡( “无法打开文件” ) ;
这位的代码实际上有两个部分。首先,我们使用的功能打开并赋予它两种说法:我们的档案名称,我们通知的PHP ,我们要通过写的性质“瓦特” 。
其次,打开函数返回所谓的文件句柄,这将使我们能够操纵该文件。我们保存文件的处理成美元ourFileHandle变数。我们将更多地谈论的文件句柄以后。
fclose ( $ ourFileHandle ) ;
我们关闭该文件被打开。 fclose需要处理的文件将要关闭。我们将更多地谈论这个更多的文件闭幕的教训。
function newlista($action){
$sql ="Select * from gx_news ";
if( $action=='today' ){ $sql.=" where datediff(new_time,".date("Y-m-d").")<=0"; }
$result =mysql_query($sql) or die('fail1'.mysql_error());
$rs =mysql_fetch_array($result);
$rdcount =mysql_num_rows($result);
if($rdcount){
$pagesize =15;
$pagecount=($rdcount % $pagesize)?(int)($rdcount / $pagesize)+1:$rdcount/$pagesize;//统计总页面
$page =isset($_GET['page'])?$_GET['page']:1;//取得当前页面
$start =($page>=1 && $page<=$pagecount)?$start=$pagesize*($page-1):$start=1;//取得超始记录
$start =$start;
$sql =$sql." order by id desc limit $start,$pagesize";
$bg =1;
//$resulte =mysql_query($sql) or die('fail'.mysql_error());
$result =mysql_query($sql) or die(mysql_error());
while($rs =mysql_fetch_array($result) ){
if( $bg % 2 !=0){
$style="class=color";
}else{
$style="";
}
echo "<li $style><a href='newscenter.php?id=".$rs[0]."' target=_blank >".$rs['new_title']."</a><span>[".$rs['new_time']."]</span></li> ";
$bg++;
}
echo '</ul><div class=navigation>';
echo "".pagelist($page,$pagecount,$rdcount,'?page=',$pagesize)."</div>";
}else{
echo '暂时没有信息!';
}
}
本人原创转载注明www.111cn.net/phper/php.html
好了,php 删除文件与目录代码是对文件与目录管理时会常用到了, 其实我们是删除文件后再删除目录的,因为php不能直接删除不是null的文件夹哦.function RmDirFiles($indir)
{
$dh = dir($indir);
while($filename = $dh->read()) {
if($filename == "." || $filename == "..")
continue;
else if(is_file("$indir/$filename"))
@unlink("$indir/$filename");
else
$this->RmDirFiles("$indir/$filename");
}
$dh->close();
@rmdir($indir);
}
//获得某目录合符规则的文件
function GetMatchFiles($indir,$fileexp,&$filearr)
{
$dh = dir($indir);
while($filename = $dh->read())
{
$truefile = $indir.'/'.$filename;
if($filename == "." || $filename == ".."){
continue;
}
else if(is_dir($truefile)){
$this->GetMatchFiles($truefile,$fileexp,$filearr);
}
else if(preg_match("/.(".$fileexp.")/i",$filename)){
$filearr[] = $truefile;
}
}
$dh->close();
}
//删除文件
function DeleteFile($filename)
{
$filename = $this->baseDir.$this->activeDir."/$filename";
if(is_file($filename)){ @unlink($filename); $t="文件"; }
else{
$t = "目录";
if($this->allowDeleteDir==1) $this->RmDirFiles($filename);
}
ShowMsg("成功删除一个".$t."!","file_manage_main.php?activepath=".$this->activeDir);
return 0;
}
这段代码来自php dedecms哦,觉得它这个检测文件大小写得比较好,所以不把它贴出来哦,与各位分享一下吧.
class SpaceUse
{
var $totalsize=0;
function checksize($indir)
{
$dh=dir($indir);
while($filename=$dh->read())
{
if(!ereg("^.",$filename))
{
if(is_dir("$indir/$filename")) $this->checksize("$indir/$filename");
else $this->totalsize=$this->totalsize + filesize("$indir/$filename");
}
}
}
function setkb($size)
{
$size=$size/1024;
//$size=ceil($size);
if($size>0)
{
list($t1,$t2)=explode(".",$size);
$size=$t1.".".substr($t2,0,1);
}
return $size;
}
function setmb($size)
{
$size=$size/1024/1024;
if($size>0)
{
list($t1,$t2)=explode(".",$size);
$size=$t1.".".substr($t2,0,2);
}
return $size;
}
}
下面我是收集了几种常用的屏蔽的ip列表的程序处理方法,屏蔽这样可以让你的网站更好,更稳定了,下面我们不来分析下面的屏蔽方法吧.
$ip_str = "127.0.0.1,192.1.1.*,202.*,127.*,123.*,142.*,*";
$ip = "127.0.0.254";
function StopIp($ip,$ip_str)
{
if(strcmp(long2ip(sprintf('%u',ip2long($ip))),$ip))return false;//验证ip如果不是ip格式就返回假
$ip = explode(".",$ip);
if(eregi("(,*,|,*.|,*)|(".$ip[0].".(".$ip[1]."|*).?(".$ip[2]."|*)?.?(".$ip[3]."|*)?)",",".$ip_str.","))return true;
}
if(StopIp($ip,$ip_str))echo 1;
function StopIp($ip,$ip_str)
{
if(strcmp(long2ip(sprintf('%u',ip2long($ip))),$ip))return false;//验证ip如果不是ip格式就返回假
$ip = explode(".",$ip);
if(eregi("(,*,|,*.|,*)|,(".$ip[0].".(".$ip[1]."|*).?(".$ip[2]."|*)?.?(".$ip[3]."|*),?)",",".$ip_str.","))return true;
}
function StopIp($ip,$str)
{
if(stristr(",".$str.",",$ip))return true;//如果在在范围内就不允许
if(stristr(",".$str.",",",*,") || stristr(",".$str.",",",*"))return true;//如果首次出现,*. 或者 ,* 表示所有站点都不允许
$iplist = explode(",",$str);
$ip = explode(".",$ip);
for($i = 0;$i<count($iplist);$i++)
{
if(eregi($ip[0].".(".$ip[1]."|*).?(".$ip[2]."|*)?.?(".$ip[3]."|*)?",$iplist[$i]))return true;
}
}
//测试
$ip_str = "127.0.0.1,192.1.1.*,202.*,127.*,123.*";//这个是屏蔽的ip列表 以","隔开,如果要屏蔽所有ip请用* 如果想屏蔽127.开头的ip格式为 127.*
$ip = "137.0.0.2"; //需要验证的Ip
if(StopIp($ip,$ip_str))echo 1;
for($i=1;$i<=255;$i++)
{
for($k=1;$k<=255;$K++)
{
for($a=1;$a<=255;$a++)
{
$str .= "192.{$i}.{$k}.{$a}";
}
}
}
这样就能生产 255*255*255 很大的Ip数据量了