当前位置: 首页 > news >正文

购物网站的设计思路如何创建网站教程

购物网站的设计思路,如何创建网站教程,做网站公司郑州郑州的网站建设公司排名,网站首屏做多大文章目录 文件编程的必要性目录操作其它目录操作递归遍历目录PHP5常见文件操作函数PHP4常见文件操作函数其他文件操作函数 文件编程的必要性 文件编程指利用PHP代码针对文件(文件夹)进行增删改查操作。 在实际开发项目中,会有很多内容&…

文章目录

  • 文件编程的必要性
  • 目录操作
  • 其它目录操作
  • 递归遍历目录
  • PHP5常见文件操作函数
  • PHP4常见文件操作函数
  • 其他文件操作函数

文件编程的必要性

文件编程指利用PHP代码针对文件(文件夹)进行增删改查操作。

在实际开发项目中,会有很多内容(文件上传、配置文件等)具有很多不确定性,不能在一开始就手动的创建,需要根据实际需求和数据本身来进行管理,这个时候就可以使用PHP文件编程来实现代码批量控制和其他操作。


文件操作的分类

1) 目录操作:文件夹,用来存放文件的特殊文件

2) 文件操作:用来存放内容

目录操作

创建目录

1.mkdir(目录名):创建成功返回true,创建失败返回false

2.创建目录可以结合错误抑制符使用。因为有些操作为的就是得到一个想要的结果,如果结果本身就存在,那么可以忽略得到过程的错误:抑制错误。

  • 例如:上面想要创建的文件夹本身就存在
$res = @mkdir('dir');

删除目录

rmdir(指定文件夹路径):移出文件夹

@rmdir('dir');

读取目录

读取方式:将文件夹(路径)按照资源方式打开

1.opendir(目录名):打开资源,返回一个路径资源,包含指定目录下的所有文件(文件夹)

2.readdir(路径资源):从资源中读取指针所在位置的文件名字,然后指针下移,直到指针移出资源

  • 如果想要读取所有内容,那么此时可以使用while或者for进行循环操作
$r = @opendir('dir');
while($file = readdir($r))
{echo $file,'<br/>';
}

关闭目录

closedir(路径资源)


其它目录操作

1)dirname(路径):得到的是路径的上一层路径

  • 作用:可以得到路径的前缀
$dir1 = 'D:/Mango/Lemon/Test.php';
$dir2 = 'D:/Mango/Lemon/Test/test.php';
echo dirname($dir1)," ",dirname($dir2);//D:/Mango/Lemon  D:/Mango/Lemon/Test

注意:dirname只是根据字符串返回,无论该路径在电脑上是否存在

2)realPath(一个路径):如果文件存在,返回该文件路径。如果文件不存在,返回false

$dir1 = 'Z:/1.md';
$dir2 = 'Z:/2.md';
var_dump(realpath($dir1),realpath($dir2));//string(7) "Z:\1.md" bool(false)

3)is_dir(路径):判断指定路径是否是一个目录,如果该路径不存在&不是目录:返回false

$dir1 = 'D:/';
$dir2 = 'D:/Mango/Lemon/Test/test.php';
var_dump(is_dir($dir1),is_dir($dir2));//bool(true) bool(false)

4)scandir(路径):封装版的opendir+readdir+closedir,获取一个指定路径下的所有文件信息,以数组形式返回

var_dump(scandir('dir'));//array(3) { [0]=> string(1) "." [1]=> string(2) ".." [2]=> string(4) "ddir" }

递归遍历目录

递归遍历目录:指定一个目录的情况下,将其下的所有文件和目录,及其目录内部的所有内容都输出出来。

思路

  • 设计一个能够遍历一层文件的函数function my_scandir($dir)

1.首先要判断$dir是否是目录,如果不是目录,直接终止

2.使用scandir读取dir目录下的所有内容(文件+子目录)

3.遍历读取到的所有内容

  • 此时需要构造文件路径(因为遍历得到的结果只是文件的名字) & 并且需要排除...文件,否则会导致死循环

  • 找到递归点:遍历得到的文件是目录,应该调用当前函数(调用自己),判断构建好的路径是目录还是普通文件,如果是目录,则调用自身函数

4.找到递归出口:遍历完这个文件夹之后,发现没有任何子文件夹(函数不再调用自己):自带递归出口

问题:如何显示层级关系

函数第一次运行遍历的结果是最外层目录,内部调用一次说明进入一个子目录,子目录再调用一次函数进入孙子目录,如果能够在第一次调用的时候给个标记,然后在进入的时候,通过标记的变化来识别层级关系,就可以达到目的:该标记还能代表层次关系:缩进

方法:可以在函数当中多增加一个参数,默认值为0,标识最外层

  • 递归调用函数的时候也需要使用该参数:但是是属于当前层级的子层,所以+1

注意:递归调用的时候,是level+1,而不是level++,因为要回溯回来,如果是++就会导致level的值发生改变

根据层级来实现缩进

可以使用str_repeat函数,作用是:重复一个字符串多少次,在这里我们的层级用空格来表示即可

  • str_repeat("&nbsp;&nbsp;",$level)) ==>重复两个空格level次

整体代码

//递归遍历目录
//参数1:路径名  参数2:当前层级,默认是0,表示最外层
function my_scandir($dir,$level = 0)
{//1.首先判断该路径是否是一个目录,如果不是,直接结束if(!is_dir($dir))die($dir.'<br/>'); //die() 函数输出一条消息,并退出当前脚本。//2.使用scandir函数获取当前路径下所有文件信息,以数组形式返回$file_array = scandir($dir);//3.遍历路径下的所有内容foreach($file_array as $file){//$file代表的就是文件名/文件夹名//根据文件层级显示对应的空格数echo str_repeat("&nbsp;&nbsp;",$level),$file.'<br/>';//排除.和..  防止死递归if($file == '.' || $file == '..') continue;//因为$file只是文件名,所以要构造路径$file_dir = $dir.'/'.$file; //利用到了 .连接符//验证: echo $file_dir;//如果是目录,那么就递归if(is_dir($file_dir))my_scandir($file_dir,$level+1);}
}
$dir = 'dir';
my_scandir($dir);

效果

image-20230802144808964


PHP5常见文件操作函数

1)file_get_contents(文件路径):获取指定文件的所有内容

  • 如果路径不存在最好做安全处理 ==> 错误抑制
$file = 'read.txt';
$content = @file_get_contents($file);
echo $content;//hello I am read.txt Mango Lemon

2)file_put_contents(文件路径,内容)将指定内容写入到指定文件内:如果当前路径下不存在指定的文件,函数会自动创建(如果路径不存在,不会创建路径)

  • 返回值:返回写入的字符串长度(字节)
$file = 'read.txt';
// $content = @file_get_contents($file);
$test = 'hello world';
$res = file_put_contents($file,$test);echo $res;//11

PHP4常见文件操作函数

PHP4中是将文件操作用资源形式处理:不论是读还是写都依赖资源指针:文件内容中指针所在位置

1)fopen(文件路径,打开模式):打开一个文件资源,返回值资源指针,要指定打开模式

2)fread(资源指针,长度):从打开的资源中读取指定长度的内容(字节)

3)fwrite(资源指针,内容):向打开的资源中写入指定的内容

4)fclose(资源):关闭资源

$file_name = 'read.txt';
$fp = fopen($file_name,'r');//以读方式打开
$content = fread($fp,1024);
echo $content; //hello world hello world dwadaw dwadaw
fclose($fp);

其他文件操作函数

1)is_file():判断文件是否正确(不识别路径)

$filename = 'example.txt';
if (is_file($filename)) {echo "The file exists and is a regular file.";
} else {echo "The file does not exist or is not a regular file.";
}

2)filesize():获取文件大小

$filename = 'example.txt';
$filesize = filesize($filename);
echo "The size of the file is: " . $filesize . " bytes";

3)file_exists():判断文件是否存在(识别路径)

$filename = 'example.txt';
if (file_exists($filename)) {echo "The file exists.";
} else {echo "The file does not exist.";
}

4)unlink():取消文件名字与磁盘地址的连接(删除文件)

$filename = 'example.txt';
if (file_exists($filename)) {unlink($filename);echo "File deleted successfully.";
} else {echo "File does not exist, cannot delete.";
}

5)filemtime():获取文件最后一次修改的时间

$filename = 'example.txt';
if (file_exists($filename)) {$lastModified = filemtime($filename);echo "Last modified: " . date("Y-m-d H:i:s", $lastModified);
} else {echo "File does not exist.";
}

6)fseek():设定fopen打开的文件的指针位置

$filename = 'example.txt';
$fp = fopen($filename, 'r');
fseek($fp, 50); // Set the pointer position to byte 50 from the beginning of the file
// Perform other operations here, like reading or writing
fclose($fp);

7)fgetc():一次获取一个字符

$filename = 'example.txt';
$fp = fopen($filename, 'r');
$char = fgetc($fp); // Read one character from the file
echo "The first character in the file is: " . $char;
fclose($fp);

8)fgets():一次获取一个字符串(默认行)

$filename = 'example.txt';
$fp = fopen($filename, 'r');
$line = fgets($fp); // Read one line from the file
echo "The first line in the file is: " . $line;
fclose($fp);

9)file():读取整个文件,类似file_get_contents,区别是按行读取,返回一个数组

$filename = 'example.txt';
$lines = file($filename); // Read the entire file into an array
foreach ($lines as $line) {echo $line . "<br>";
}
http://www.ds6.com.cn/news/67017.html

相关文章:

  • 江西省网站开发盐城seo排名
  • 公司网站模块制作网站建设费用
  • 电影网站怎么做优化网站推广途径和推广要点
  • dede 网站地图样式希爱力的作用与功效
  • 手机网站用什么域名橘子seo
  • 成都分想设计公司网站雅虎搜索
  • 网站建设都有那些费用搜索引擎查关键词排名的软件
  • 深圳网站公司招聘seo营销优化
  • 网站等保测评怎么做江苏网站推广
  • 宝安网站建设方案外包如何推广公司
  • 网站建设实训课指导书网站版式分析无代码系统搭建平台
  • 济南莱芜都市网南京百度快速排名优化
  • 免费注册b2b网站百度重庆营销中心
  • 做分享衣服网站的初衷是什么意思厦门百度推广开户
  • 在浙学网页设计与制作答案网站 seo
  • 专做外贸的网站有哪些做电商必备的几个软件
  • 哪个网站卖做阳具好点关联词有哪些 全部
  • asp网站连不上数据库网站搭建平台都有哪些
  • 番禺网站建设平台北京seo专员
  • 邢台企业做网站找谁企业营销培训课程
  • 网站改版 百度收录东莞今日新闻大事
  • 抚顺建设银行网站广州王牌seo
  • 弹幕视频网站开发优化关键词有哪些方法
  • 重庆模板建站公司手机卡顿优化软件
  • 建设银行善融商务网站百度投放广告一天多少钱
  • 深圳十大电商巨头seo关键词推广话术
  • 做网站郑州谷歌关键词挖掘工具
  • 和外国人做ic生意的网站网络服务网络推广
  • 网站改版 升级的目的常见的营销策略有哪些
  • 苹果商店app下载怎样优化标题关键词