How to use PHP to develop a simple online file editor function
With the development of the Internet, more and more work and study need to be done online, among which online files Editor functionality has become a must-have tool. This article will introduce how to use PHP to develop a simple online file editor function and provide specific code examples.
1. Functional requirements
The online file editor functions we need to implement are as follows:
2. Development environment
Before starting development, we need to ensure that the Apache server and PHP interpreter have been installed in the local environment.
3. Project structure
We create a project folder named "file_editor", which contains the following files and folders:
4. Implementation steps
Create the index.php file, the code is as follows:
<!DOCTYPE html> <html> <head> <title>在线文件编辑器</title> <link rel="stylesheet" type="text/css" href="assets/style.css"> <script src="assets/script.js"></script> </head> <body> <h1>在线文件编辑器</h1> <form action="upload.php" method="post" enctype="multipart/form-data"> <input type="file" name="file"> <input type="submit" value="上传"> </form> <h2>已上传文件</h2> <ul> <?php $files = scandir('uploads'); foreach ($files as $file) { if ($file != '.' && $file != '..') { echo '<li><a href="edit.php?file=' . $file . '">' . $file . '</a> <a href="delete.php?file=' . $file . '">删除</a></li>'; } } ?> </ul> </body> </html>
Create upload. php file, the code is as follows:
<?php if ($_FILES['file']['error'] > 0) { echo '文件上传失败!'; } else { move_uploaded_file($_FILES['file']['tmp_name'], 'uploads/' . $_FILES['file']['name']); header("Location: index.php"); } ?>
Create the edit.php file, the code is as follows:
<?php $file = $_GET['file'] ?? ''; $content = file_get_contents('uploads/' . $file); if (empty($file) || !file_exists('uploads/' . $file)) { header("Location: index.php"); } if ($_SERVER['REQUEST_METHOD'] == 'POST') { file_put_contents('uploads/' . $file, $_POST['content']); } ?> <!DOCTYPE html> <html> <head> <title>编辑文件</title> <link rel="stylesheet" type="text/css" href="assets/style.css"> <script src="assets/script.js"></script> </head> <body> <h1>编辑文件:<?php echo $file ?></h1> <form action="" method="post"> <textarea name="content"><?php echo $content ?></textarea> <input type="submit" value="保存"> </form> <h2>预览</h2> <pre class="brush:php;toolbar:false"><?php echo $content ?>