PHP之文件操作

来源:互联网 发布:rtsp端口是什么 编辑:程序博客网 时间:2024/06/06 10:33

PHP Filesystem 函数

文件读取:

// NoAlike.txt爱的色放付付付阿斯蒂芬老客户
// 读取NoAlike.txt文件的内容//假设我们有一个多行的文件叫NoAlike.txt,没有的话你可以新建一个这个文件 $filename = 'NoAlike.txt'; //打开这个文件,将文件内容赋值给$filestring $filestring = file_get_contents($filename); //因为每一行有一个回车即\n,我用\n来把这个字符串切割成数组$filearray = explode("\n", $filestring); //把切割成的数组,下标赋值给$key,值赋值给$val,每次循环将$key加1。while (list($key, $val) = each($filearray)) {      ++$key;     $val = trim($val);      print 'Line' . $key .':'. $val.'<br />'; }// 最终输出:Line1:爱的色放付付付Line2:阿斯蒂芬老客户

以只读模式打开NoAlike.txt

<?php    //以只读模式打开NoAlike.txt    $fp = fopen('NoAlike.txt', "r");    /**     * var_dump()操作一下$fp看看效果,     * 输出的是不是只有类型提示的是resource     * */    var_dump($fp);    $contents = fread($fp,1024);    fclose($fp);    echo $contents;?>// 输出为:resource(3, stream)爱的色放付付付 阿斯蒂芬老客户

写入文件:

<?php    header("Content-Type:text/html;charset=UTF-8");    $data = "我是一个兵,来自老百姓";    $numbytes = file_put_contents('binggege.txt', $data);    if($numbytes){        echo '写入成功,我们读取看看结果试试:';        echo file_get_contents('binggege.txt');    }else{        echo '写入失败或者没有权限,注意检查';    }?>// 文件不存在,会自动创建binggege.txt文件,并把$data的内容写入// 刷新多次,文件中依然只写了$data一句话

计算某文件有多少字节

<?php    header("Content-Type:text/html;charset=UTF-8");    $filename = 'test.txt';    $fp= fopen($filename, "w");    $len = fwrite($fp, '我是一只来自南方的狼,一直在寻找心中的花姑娘');    fclose($fp);    print $len."字节被写入了\n";?>

创建临时文件

<?php    header("Content-Type:text/html;charset=UTF-8");    //创建了一个临时文件    $handle = tmpfile();    //向里面写入了数据    $numbytes = fwrite($handle, '写入临时文件');    //关闭临时文件,文件即被删除    fclose($handle);    echo  '向临时文件中写入了'.$numbytes . '个字节';?>文件不存在,会自动创建并写入内容,创建临时文件,写入成功,计算字节,关闭即销毁文件

重命名文件

<?php    //旧文件名    $filename = 'test.txt';    //新文件名    $filename2 = $filename . '.old';    //修改名字    rename($filename, $filename2);?>// 需保证旧文件存在,不然无法更改

复制文件

<?php    //旧文件名    $filename = 'binggege.txt';    //新文件名    $filename2 = $filename . '_new';    //复制文件    copy($filename, $filename2);?>// binggege.txt_new

安装文件锁:

<?phpheader("Content-Type:text/html;charset=UTF-8");if(file_exists('install.lock')){    echo '已安装,请不要再次进行安装';    exit;}else{    echo '请安装文件锁';}?>

获取文件的扩展名

//获取扩展名extension伸展,扩展。ext文件系统function getExtension($filename){    //substr(string,start,length)函数返回字符串的一部分。    /*strrpos(string,find,start)    函数查找字符串在另一个字符串中最后一次出现的位置    如果成功,则返回位置,否则返回 false*/    $myext = substr($filename, strrpos($filename, '.'));    return str_replace('.','',$myext);     //str_replace(find,replace,string,count)函数使用一个字符串替换字符串中的另一些字符}$filename = '我的文档.doc';echo getExtension($filename);

获取文件大小并格式化

//PHP获取文件大小并格式化function formatSize($size) {    $sizes = array(" Bytes", " KB", " MB", " GB", " TB", " PB", " EB", " ZB", " YB");    if ($size == 0) {        return('n/a');    }else{        $i = floor(log($size, 1024));        return (round($size/pow(1024, $i), 2) . $sizes[$i]);    }}$thefile = filesize('16.php');echo "{$thefile}<br>";echo formatSize($thefile);

列出目录下的文件名

//PHP列出目录下的文件名 function listDirFiles($DirPath){    if($dir = opendir($DirPath)){        while(($file = readdir($dir)) !== false){            if(!is_dir($DirPath.$file)){                echo "filename: $file<br />";            }        }    }}listDirFiles('./');

获取当前文件的绝对地址:

<?php//str_replace() 字符串替换操作,区分大小写 mix str_replace(mix//$search,,mix $replace,mix $subject[,int &$num])$_current_file = str_replace(array('/', '\\'), DIRECTORY_SEPARATOR, __FILE__);define('__CUR_FILE__', $_current_file);echo __CUR_FILE__;?>

创建图片:

<?php//创建图片$img = imagecreatetruecolor(500, 500);//分配颜色$red = imagecolorallocate($img, 255, 0, 0);$green = imagecolorallocate($img, 0, 255, 0);$blue = imagecolorallocate($img, 0, 0, 255);$pur = imagecolorallocate($img, 255, 0, 255);$yellow = imagecolorallocate($img, 121, 72, 0);//填充背景imagefilledrectangle($img, 0, 0, 500, 500, $green);//画对角线imageline($img, 0, 0, 500, 500, $red);imageline($img, 500, 0, 0, 500, $blue);//画圆imagefilledellipse($img, 250, 250, 200, 200, $yellow);//圆中间画矩形imagefilledrectangle($img, 200, 200, 300, 300, $blue);//保存图片,图片名为haha.jpgimagejpeg($img, 'haha.jpg');//销毁资源imagedestroy($img);?>

下图是 haha.jpg

使用CURL请求

<?phpheader("Content-Type:text/html;charset=UTF-8");$content = get('http://www.xmtnews.com/events');var_dump($content);preg_match('/<section class="ov">(.*?)<div class="hr-10"><\/div>/mis',$content,$match);//将正则匹配到的内容赋值给$areavar_dump($match);$area = $match[1];preg_match_all('/<h3><a href="(.*?)" title=".*?" class="headers" target="_blank">(.*?)<\/a><\/h3>/', $area, $find);var_dump($find);foreach($find[0] as $key=>$val){    echo $val;}function get($url) {    //初使化curl    $ch = curl_init();    //请求的url,由形参传入    curl_setopt($ch, CURLOPT_URL, $url);    //将得到的数据返回    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);    //不处理头信息    curl_setopt($ch, CURLOPT_HEADER, 0);    //连接超过10秒超时    curl_setopt($ch, CURLOPT_TIMEOUT, 10);    //执行curl    $output = curl_exec($ch);    //关闭资源    curl_close($ch);    //返回内容    return $output;}?>
原创粉丝点击