TP5项目中模板文件html的更新及php写入、删除与复制文件的方法

简介:

项目是thinkphp5的,后台有一个,上传html模板代码的功能。

因为模板里,除了html代码外,还有,

1
2
3
{volist name= "list"  id= "vo" }{/volist}
 
{ $title }
1
php,js代码。

我是这样做的,先建一个template表。

1
2
3
4
5
6
7
8
9
10
11
12
13
CREATE TABLE hk_template
(
     id INT(10) PRIMARY KEY NOT NULL,
     name VARCHAR(30),
     content TEXT COMMENT  'markdown代码' ,
     content_html TEXT COMMENT  'html代码' ,
     filepath VARCHAR(255) COMMENT  '所在位置,比如:application/index/view/special/detail.html' ,
     status TINYINT(1) DEFAULT  '1'  COMMENT  '1启用,0不启用' ,
     create_time INT(10),
     update_time INT(10),
     create_uid INT(10),
     update_uid INT(10)
);


写入,用textarea框,将,代码全部写入到content中。

在写入成功后,再将content,的内容,

放在到模板文件中。

因为在/public/index.php中有定义APP_PATH,

1
2
3
4
5
6
7
// [ 应用入口文件 ]
 
// 定义应用目录
define( 'APP_PATH' , __DIR__ .  '/../application/' );
define( 'WEB_URL' 'http://' . $_SERVER [ 'HTTP_HOST' ]);
// 加载框架引导文件
require  __DIR__ .  '/../thinkphp/start.php' ;

.edit方法如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
public  function  edit( $id ){
     $template  = model( 'Template' );
     if (IS_POST){
         $data  $_POST ;
         // 提交表單
         $result  $template ->allowField(true)->save( $data ,[ 'id' => $data [ 'id' ]]);
         if  ( $result ) {
             // 目标文件: application/index/view/special/detail.html,替换里面的内容。
             //
             $filename  = APP_PATH. 'index/view/specail/detail.html' ;
             // chmod($filename, 777); //写这一句无权限修改,就只好在目录下手动修改了
             $file  fopen ( $filename "w" );  //以写模式打开文件
             fwrite( $file $data [ 'content' ]);  //写入第一行
             fclose( $file );  //关闭文件
             return  $this ->success( "更新成功!" , url( 'admin/template/index' ));
         else  {
             return  $this ->error( $template ->getError(), url( 'admin/template/add' ));
         }
     } else {
         // 單條記錄
         if (! $id ){
             $this ->error( '非法操作' );
         }
         $info  $template ->where( 'id' , $id )->find();
         if (! $info ){
             return  $this ->error( $template ->getError());
         }
         $this ->assign( 'info' , $info );
         $this ->setMeta( '模板編輯' );
         return  $this ->fetch();
     }
}



下面是转载自:

http://www.jb51.net/article/68202.htm


本文实例讲述了php写入、删除与复制文件的方法。分享给大家供大家参考。具体如下:


  1. 写入:


<?php
$filename  "Test//file.txt" ;
$file  fopen ( $filename "w" );  //以写模式打开文件
fwrite( $file "Hello, world!/n" );  //写入第一行
fwrite( $file "This is a test!/n" );  //写入第二行
fclose( $file );  //关闭文件
?>


2. 删除:


<?php
$filename  "Test//file.txt" ;
unlink( $filename );  //删除文件
?>


3.复制:


<?php
$filename1  "Test//file.txt" ;
$filename2  "Test//file.bak" ;
copy ( $filename1 $filename2 );  //复制文件
?>

希望本文所述对大家的php程序设计有所帮助。



     本文转自phpervip 51CTO博客,原文链接:http://blog.51cto.com/phpervip/1933026,如需转载请自行联系原作者



相关文章
|
2月前
|
缓存 JavaScript 前端开发
Vue 项目中动态添加 HTML 元素的方法与实践
本文探讨了 Vue 中动态添加 HTML 元素的多种技术方案,包括条件渲染(v-if/v-show)、动态组件(component :is)、手动挂载($mount)及 Vuex 状态管理等方法。通过实例分析,如动态表单生成器与全局模态框服务,展示了这些方案在实际开发中的应用。同时提供了性能优化建议和注意事项,帮助开发者根据需求选择最佳方式,在保持 Vue 响应式特性的同时实现灵活交互。附带代码示例,便于理解和实践。
61 2
|
3月前
|
Ubuntu PHP Apache
在Ubuntu系统中为apt的apache2编译PHP 7.1的方法
以上就是在Ubuntu系统中为apt的apache2编译PHP 7.1的方法。希望这个指南能帮助你成功编译PHP 7.1,并在你的Apache服务器上运行PHP应用。
99 28
|
3月前
|
PHP 开发者
PHP数据验证方法:如何检查一个字符串是否是email格式。
以上就是关于PHP如何检查一个字符串是否是email格式的全部内容。希望你在代码书写旅途中,能找到你的北斗星——简洁、高效、可靠的代码验证方式。让我们共同见证PHP的强大和丰富多彩!
88 16
|
4月前
|
SQL 数据库连接 Linux
数据库编程:在PHP环境下使用SQL Server的方法。
看看你吧,就像一个调皮的小丑鱼在一片广阔的数据库海洋中游弋,一路上吞下大小数据如同海中的珍珠。不管有多少难关,只要记住这个流程,剩下的就只是探索未知的乐趣,沉浸在这个充满挑战的数据库海洋中。
98 16
|
8月前
|
前端开发 测试技术 定位技术
如何利用HTML和CSS构建企业级网站的全过程。从项目概述到页面结构设计,再到HTML结构搭建与CSS样式设计,最后实现具体页面并进行优化提升,全面覆盖了网站开发的关键步骤
本文深入介绍了如何利用HTML和CSS构建企业级网站的全过程。从项目概述到页面结构设计,再到HTML结构搭建与CSS样式设计,最后实现具体页面并进行优化提升,全面覆盖了网站开发的关键步骤。通过实例展示了主页、关于我们、产品展示、新闻动态及联系我们等页面的设计与实现,强调了合理布局、美观设计及用户体验的重要性。旨在为企业打造一个既专业又具吸引力的线上平台。
285 7
|
8月前
|
JSON PHP 数据格式
PHP解析配置文件的常用方法
INI文件是最常见的配置文件格式之一。
116 12
|
8月前
|
SQL 安全 PHP
PHP开发中防止SQL注入的方法,包括使用参数化查询、对用户输入进行过滤和验证、使用安全的框架和库等,旨在帮助开发者有效应对SQL注入这一常见安全威胁,保障应用安全
本文深入探讨了PHP开发中防止SQL注入的方法,包括使用参数化查询、对用户输入进行过滤和验证、使用安全的框架和库等,旨在帮助开发者有效应对SQL注入这一常见安全威胁,保障应用安全。
249 4
|
8月前
|
JavaScript 前端开发 Java
SpringBoot项目的html页面使用axios进行get post请求
SpringBoot项目的html页面使用axios进行get post请求
126 2
|
9月前
|
Web App开发 前端开发 搜索推荐
创建HTML文件
【10月更文挑战第14天】创建HTML文件
227 4
|
8月前
|
JavaScript 前端开发 Java
SpringBoot项目的html页面使用axios进行get post请求
SpringBoot项目的html页面使用axios进行get post请求
107 0

热门文章

最新文章