Comment utiliser PHP pour développer une fonction simple d'édition de fichiers en ligne
Avec le développement d'Internet, de plus en plus de travaux et d'études doivent être effectués en ligne, parmi lesquels la fonction d'édition de fichiers en ligne est devenue un outil essentiel. Cet article explique comment utiliser PHP pour développer une fonction simple d'édition de fichiers en ligne et fournit des exemples de code spécifiques.
1. Exigences fonctionnelles
Les fonctions de l'éditeur de fichiers en ligne que nous devons implémenter sont les suivantes :
2. Environnement de développement
Avant de commencer le développement, nous devons nous assurer que l'environnement local a installé le serveur Apache et l'interpréteur PHP.
3. Structure du projet
Nous créons un dossier de projet nommé "file_editor", qui contient les fichiers et dossiers suivants :
<!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>
<?php if ($_FILES['file']['error'] > 0) { echo '文件上传失败!'; } else { move_uploaded_file($_FILES['file']['tmp_name'], 'uploads/' . $_FILES['file']['name']); header("Location: index.php"); } ?>
<?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 ?>