热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

PHP的基础(三)

个人博客搭建完成,欢迎大家来访问哦黎默丶lymoo的博客PHP文件的操作打开文件$fhfopen(test.txt,a);读取文件1.fread$strfread($fh,file

个人博客搭建完成,欢迎大家来访问哦
黎默丶lymoo的博客

PHP文件的操作

打开文件

$fh = fopen("test.txt", "a");

读取文件

1.fread

$str = fread($fh, filesize("test.txt"));

filesize是获取文件的大小,返回的类型是字符串

2.fgets

fgets只返回一行,返回的类型也是字符串,再次返回就从下一行开始

$str = fgets($fh);
$str = fgets($fh);

3.file

注意file返回的类型是数组

$arr = file("test.txt");

4.file_get_contents

file_get_contents获取文件内容,也会返回出字符串,还可以用绝对路径打开一个网页

$str = file_get_contents("test.txt");
$str = file_get_contents("https://www.baidu.com");

文件写入

1.fwrite

fwrite($fh, "我是写入的内容");

2.file_put_contents

file_put_contents("test.txt", "我是put进去的");

关闭文件

fclose($fh);

复制文件

copy(需要复制的文件, 新的文件名);

copy("test.txt", "test2.txt");

重命名文件

rename(原文件名, 新文件名);

rename("test2.txt", "rename.txt");

删除文件

unlink(需要删除的文件名);

unlink("test.txt");
PHP获取PV

什么是PV?

PV(page view)即页面浏览量
这里我介绍一下最简单的记录PV的原理以及方法
原理:通过判断是否存在记录pv量的文件,如果没有就创建,并在文件里写入1,如果有,就获取文件里的数值,并加1,再写入文件。

if (file_exists("pv.txt")){
$str = file_get_contents("pv.txt");
$str++;
echo "当前的PV量是".$str;
file_put_contents("pv.txt", $str);
} else {
echo "当前的pv量是1";
file_put_contents("pv.txt", 1);
}
PHP对文件目录的操作

打开目录

opendir(".");

读取文件

如同fgets,第一次只读取第一个,第二次到第二个依次类推

readdir($dh);

可以使用while循环来读取

while ($file = readdir($dh)) {
echo $file."


";
}

将目录以数组的形式全部返回出来

$fileArr = scandir(".");
print_r($fileArr);

关闭目录

closedir($dh);

创建文件

mkdir("test");

删除文件

rmdir("test");
以表格的形式展示出文件目录

这里我就不多说了直接上例子!

$dh = opendir(".");
?>








while ($file = readdir($dh)) {
echo "
";
echo "
";
echo "
";
}
?>
{$file}



这种方式运行出的结果是一样的

$dh = opendir(".");
?>








while ($file = readdir($dh)) {
?>



}
?>



第三种显示目录的方式

@$url = $_GET["url"]; // @符号可以抑制报错,前提是这个错误不影响整个程序运行
echo $url;
if ($url)
$dh = opendir($url);
else
$dh = opendir(".");?>








while ($file = readdir($dh)) {
?>



}
?>

链接到上一层


PHP文件目录的一些操作

获取上一次的访问时间

fileatime();

date_default_timezone_set('PRC'); // 设置默认时区
$time = fileatime("file.php"); // 时间戳单位是秒
$time = date("Y-m-d H:i:s", $time); // 设置打印出来的时间的格式
echo $time;

获取上一次的修改时间

filemtime();

$time = filemtime("file.php"); // 时间戳单位是秒
$time = date("Y-m-d H:i:s", $time); // 设置打印出来的时间的格式
echo $time;

获取上一次Innode的修改时间

filectime();
ps:Innode包括修改权限等等

$time = filectime("file.php"); // 时间戳单位是秒
$time = date("Y-m-d H:i:s", $time); // 设置打印出来的时间的格式
echo $time;

获取文件名

basename();
注意它获取的是一个文件的文件名+后缀扩展名

$path = $_SERVER['REQUEST_URI']; // 获取服务器中的文件路径
$path = __FILE__; // 获取服务器根路径文件路径
$basename = basename($path); // 获取文件名
print_r(pathinfo($path)); // 返回的是数组
PHP文件的权限修改

chomd();
用法:chomd(文件,八进制组成的权限)
权限由4位八进制组成,第一个是0,表示这是一个八进制,
第二位代表是所有者的权限,第三位是所有者所在组的权限,第四位是任何人的权限,
权限有1,2,4组成,可累加进行权限的叠加,
1代表可执行权限、2代表可写权限、4代表可读权限
例如要设置所有者可读可写,所有者所在组可执行可写,任何人可执行可读

chmod("file.php", 0635);

原文链接


推荐阅读
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • C语言注释工具及快捷键,删除C语言注释工具的实现思路
    本文介绍了C语言中注释的两种方式以及注释的作用,提供了删除C语言注释的工具实现思路,并分享了C语言中注释的快捷键操作方法。 ... [详细]
  • eclipse学习(第三章:ssh中的Hibernate)——11.Hibernate的缓存(2级缓存,get和load)
    本文介绍了eclipse学习中的第三章内容,主要讲解了ssh中的Hibernate的缓存,包括2级缓存和get方法、load方法的区别。文章还涉及了项目实践和相关知识点的讲解。 ... [详细]
  • 本文介绍了深入浅出Linux设备驱动编程的重要性,以及两种加载和删除Linux内核模块的方法。通过一个内核模块的例子,展示了模块的编译和加载过程,并讨论了模块对内核大小的控制。深入理解Linux设备驱动编程对于开发者来说非常重要。 ... [详细]
  • Day2列表、字典、集合操作详解
    本文详细介绍了列表、字典、集合的操作方法,包括定义列表、访问列表元素、字符串操作、字典操作、集合操作、文件操作、字符编码与转码等内容。内容详实,适合初学者参考。 ... [详细]
  • 海马s5近光灯能否直接更换为H7?
    本文主要介绍了海马s5车型的近光灯是否可以直接更换为H7灯泡,并提供了完整的教程下载地址。此外,还详细讲解了DSP功能函数中的数据拷贝、数据填充和浮点数转换为定点数的相关内容。 ... [详细]
  • 移动端常用单位——rem的使用方法和注意事项
    本文介绍了移动端常用的单位rem的使用方法和注意事项,包括px、%、em、vw、vh等其他常用单位的比较。同时还介绍了如何通过JS获取视口宽度并动态调整rem的值,以适应不同设备的屏幕大小。此外,还提到了rem目前在移动端的主流地位。 ... [详细]
  • 在Oracle11g以前版本中的的DataGuard物理备用数据库,可以以只读的方式打开数据库,但此时MediaRecovery利用日志进行数据同步的过 ... [详细]
  • 如何在HTML中获取鼠标的当前位置
    本文介绍了在HTML中获取鼠标当前位置的三种方法,分别是相对于屏幕的位置、相对于窗口的位置以及考虑了页面滚动因素的位置。通过这些方法可以准确获取鼠标的坐标信息。 ... [详细]
  • C语言常量与变量的深入理解及其影响
    本文深入讲解了C语言中常量与变量的概念及其深入实质,强调了对常量和变量的理解对于学习指针等后续内容的重要性。详细介绍了常量的分类和特点,以及变量的定义和分类。同时指出了常量和变量在程序中的作用及其对内存空间的影响,类似于const关键字的只读属性。此外,还提及了常量和变量在实际应用中可能出现的问题,如段错误和野指针。 ... [详细]
  • http:my.oschina.netleejun2005blog136820刚看到群里又有同学在说HTTP协议下的Get请求参数长度是有大小限制的,最大不能超过XX ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 高质量SQL书写的30条建议
    本文提供了30条关于优化SQL的建议,包括避免使用select *,使用具体字段,以及使用limit 1等。这些建议是基于实际开发经验总结出来的,旨在帮助读者优化SQL查询。 ... [详细]
  • PHPMailer邮件类邮件发送功能的使用教学及注意事项
    本文介绍了使用国外开源码PHPMailer邮件类实现邮件发送功能的简单教学,同时提供了一些注意事项。文章涵盖了字符集设置、发送HTML格式邮件、群发邮件以及避免类的重定义等方面的内容。此外,还提供了一些与PHP相关的资源和服务,如传奇手游游戏源码下载、vscode字体调整、数据恢复、Ubuntu实验环境搭建、北京爬虫市场、进阶PHP和SEO人员需注意的内容。 ... [详细]
  • 本文介绍了如何使用C#制作Java+Mysql+Tomcat环境安装程序,实现一键式安装。通过将JDK、Mysql、Tomcat三者制作成一个安装包,解决了客户在安装软件时的复杂配置和繁琐问题,便于管理软件版本和系统集成。具体步骤包括配置JDK环境变量和安装Mysql服务,其中使用了MySQL Server 5.5社区版和my.ini文件。安装方法为通过命令行将目录转到mysql的bin目录下,执行mysqld --install MySQL5命令。 ... [详细]
author-avatar
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有