在学习中会经常遇到文件系统,本文将将讲解php文件系统的操作。
<!-- PHP文件系统 -->
<?php
readfile("/home/paul/text.txt");
$filename = 'NoAlike.txt';
$filestring = file_get_contents($filename);
echo $filestring;
// fopenreadclose操作读取文件
$fp = fopen('NoAlike.txt', "r");//r、r+、w、w+
$contents = fread($fp, 1024);
fclose($fp);
var_dump($fp);
$date = "在PHP中文网学好PHP,妹子票子不在话下!";
$numbyte = file_put_contents('binggege.txt', $data);
if ($numbyte) {
echo '写入成功,我们读取看看结果试试:';
echo file_get_contents('binggege.txt');
}else{
echo '写入失败或者没有权限,注意检查';
}
// fwrite配合fopen进行写入操作
$filename = 'test.txt';
$fp = fopen($filename, "r+");//x、a
$len = fwrite($fp, '我是一只来自南方的狼,一直在');
//创建临时文件
$handle = tmpfile();
$numbytes = fwrite($handle, '写入临时文件');
fclose($handle);
echo '向临时文件中写入了'.$numbytes.'个字节';
//移动、拷贝和删除文件
rename($oldname, $newname);
$filename = 'test.txt';
$filename2 = $filename.'old';
rename($oldname, $oldname2);
copy($oldname, $oldname2);
if (unlink($filename)) {
echo "删除文件成功$filename!
";
}else {
echo "sc $filename失败!
";
}
//检测文件属性函数
file_exists($filename);//文件是否存在
is_readable($filename);//文件是否可读
is_writable($filename);//文件是否可写
is_executable($filename);//文件是否可执行
is_file($filename);//是否是文件
is_dir($filename);//是否是目录
clearstatcache();//清楚文件的状态缓存
if (file_exists('install.lock')) {
echo '已安装,请不要再次安装';
exit;
}
//文件常用函数和常量
$_current_file = str_replace(
array('/','\'), DIRECTORY_SEPARATOR, __FILE___);
define('_CUR_FILE_', $_current_file);
echo _CUR_FILE_;
rewind($handle);//指针回到开始处
fseek($handle, $offset);//文件指针向后移动指定字符
$fp = fopen('demo2.txt', 'r+');
echo fread($fp, 10);
rewind($fp);
echo '<br>';
echo fread($fp, 10);
echo '<br>';
echo fseek($fp, 10);
echo '<br>';
echo fread($fp, 10);
echo '<br>';
fclose($fp);
$filename = 'demo.txt';
echo $filename . '文件大小为:'.
filesize($filename).'bytes';
filectime($filename);//文件创建时间
filemtime($filename);//文件修改时间
fileatime($filename);//文件上次访问时间
$filename = 'demo.txt';
if (file_exists($filename)) {
echo '$filename文件的上次访问时间是:'.date("Y-m-d H:i:s"
,filectime($filename));
echo '$filename文件的上创建时间是:'.date("Y-m-d H:i:s"
,filectime($filename));
echo '$filename文件的上次修改时间是:'.date("Y-m-d H:i:s"
,filemtime($filename));
}
//文件锁处理机制
$fp = fopen("demo.txt", "r+");
if (flock($fp, LOCK_EX)) {
fwrite($fp, "文件这个时候被我占用了哟
");
flock($fp, LOCK_UN);
}else {
echo "锁失败,可能有人在操作,这个时候不能将文件上锁";
}
fclose($fp);
//目录处理函数
$dir = "d:/";
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
echo readdir($dh).'<br />';
echo readdir($dh).'<br />';
echo readdir($dh).'<br />';
echo readdir($dh).'<br />';
closedir($dh);
};
}
$dir = "d:/";
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false){
echo "文件名为:$file :
文件的类型是:".filetype($dir.$file).'<br />';
}
closedir($dh);
}
}
//文件权限设置
chmod("/var/wwwroot/index.html", 755);
chmod("/var/wwwroot/index.html", "u+rwx,go+rx");
chmod("/somedir/somefile", 0755);
//文件路径函数
pathinfo($path);//返回文件的各个组成部分
basename($path);//返回文件名
dirname($path);//文件目录部分
parse_url($url);//网址拆解成各部分
http_build_query($query_data);//生成url中的query字符串
http_build_url();//生成一个url
$date = [
'username'=>'php',
'area'=>'hubei'
];
echo http_build_query($date);
$path_parts = pathinfo('d:/www/index.inc.php');
echo '文件目录名:'.$path_parts['dirname']."<br />";
echo '文件全名:'.$path_parts['basename']."<br />";
echo '文件扩展名:'.$path_parts['extension']."<br />";
echo '不包含扩展的文件名:'.$path_parts['filename']."<br />";
echo "1: ".basename("d:/www/index.d",".d").PHP_EOL;
echo "2: ".basename("d:/www/index.php").PHP_EOL;
echo "3: ".basename("d:/www/passwd").PHP_EOL;
$url = 'https://username:password@hostname:9090/path?arg=value#anchor';
var_dump(parse_url($url));
//文件留言本
// date_default_timezone_set('PRC');
@$string = file_get_contents('message.txt');
if (!empty($string)) {
$string = rtrim($string, '&^');
$arr = explode('&^', $string);
foreach ($arr as $value){
list($username, $content, $time) = explode('$#', $value);
echo '用户名为<font color="gree">'.$username.'</font>';
echo '<hr />';
}
}
$fp=fopen('message.txt', 'a');
$time=time();
$username=trim(@$_POST['username']);
$content=trim(@$_POST['content']);
if ($username & $content) {
$string=$username.'$#'.$content.'$#'.$time.'&^';
fwrite($fp, $string);
fclose($fp);
}
?>
<h1>基于文本的留言本演示</h1>
<form action="write.php" method="post">
用户名:<input type="text" name="username" /><br />
留言内容:<textarea name="content"></textarea><br />
<input type="submit" value="提交" />
</form>
<!-- 实现修改配置文件的实例 -->
<?php
include 'config.php';
?>
<form action="edit.php" method="post">
<input type="text" name="DB_HOST" value="<?php echo DB_HOST;?>" /><br />
<input type="text" name="DB_USER" value="<?php echo DB_USER;?>" /><br />
<input type="text" name="DB_PWD" value="<?php echo DB_PWD;?>" /><br />
<input type="text" name="DB_NAME" value="<?php echo DB_NAME;?>" /><br />
<input type="submit" value="修改" />
</form>
<!-- edit.php -->
<?php
$string=file_get_contents('config.php');
foreach ($_POST as $key=>$val){
$yx="/define′$key′,′.∗?′′$key′,′.∗?′;/";
$re="define('$key','$val');";
$string=preg_replace($yx, $re, $string);
}
file_put_contents('config.php', $string);
echo '修改成功';
?>
<!-- config.php -->
<?php
define('DB_HOST', 'localhost1');
define('DB_USER', 'root1');
define('DB_PWD', 'root1');
define('DB_NAME', 'neirong1');
?>本文讲解了php文件系统的操作,更多相关知识请关注php中文网。
相关推荐:
立即进入“豆包AI人工智官网入口”;
立即学习“豆包AI人工智能在线问答入口”;
以上就是php基础学习:PHP文件系统的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号