ThinPHP第二十八天(F函数和file_put_contents区别|PHP生成PHP文件,Kindeditor编辑器使用方法)
1、F(name,data,path)函数和file_put_contents(file,str)区别
F函数直接生成<?php ?>格式的php文件了,将data加入到<?php和?>之间中。
file_put_contents(file,str),将str写入到file中。
str应该自己设计格式
$str = "<?php\r\nreturn ".var_export(array_change_key_case($_POST,CASE_UPPER),true).";\r\n?>";
其中\r\n表示换行,转义字符应该房子双引号内才能被解析。
var_export($arr,true)将数组转化成为字符串样式。
array_change_key_case($arr,CASE_UPPER);将数组的键名大写。
2、Kindeditor编辑器使用方法
第一步:引入文件
<js file=
"__PUBLIC__/Js/kind/kindeditor-all-min.js"
/>
<js file=
"__PUBLIC__/Js/kind/lang/zh_CN.js"
/>
<cs file=
"__PUBLIC__/Js/kind/themes/default/default.css"
/>
第二步:创建编辑器容体
<
textarea
id
=
"mycontent"
name
=
"mycontent"
></
textarea
>
第三步:创建JS代码
KindEditor.ready(function(K){
//题目富文本框
window.editor = K.create('#mycontent',{
width:'700px',
uploadJson:"{:U(GROUP_NAME.'/Timu/upload')}",
allowFileManager : true,//远程管理文件
allowImageRemote : false,//远程图片添加
formatUploadUrl:false,//不自动替换返回图片url地址 需要url重写支持 隐藏index.php
});
注意:Kindeditor可以与Jquery结合使用,结合使用Jquery的选择器。
另:单独调用上传图片的方式。这里面就结合了JQuery进行使用。用JQuery选择器选择元素。
$('input[add=upload]').live('click',function(){ var imgurl = $(this).prev(); editor.loadPlugin('image', function() {
editor.plugin.imageDialog({
//imageUrl : $('this').prev('').val(),
clickFn : function(url, title, width, height, border, align) {
imgurl.val(url);
editor.hideDialog();
}
});
});
});
另外要注意:当使用form.submit()提交时,应该afterBlur:
function
(){
this
.sync();}属性,当失去焦点时候同步到textarea中。
2、JQuery中live用法。
使用Jquery动态生成的元素,不能采用一般选择器方式选中,要使用live方法才能使用,如上面代码所示。
$('sector').live('action',function(){code.....});
ThinPHP第二十八天(F函数和file_put_contents区别|PHP生成PHP文件,Kindeditor编辑器使用方法)的更多相关文章
- 第二章:视图层 - 10:动态生成PDF文件
可以通过开源的Python PDF库ReportLab来实现PDF文件的动态生成. 一.安装ReportLab ReportLab库在PyPI上提供,可以使用pip来安装: $ pip install ...
- 第二章:视图层 - 9:动态生成CSV文件
CSV (Comma Separated Values),以纯文本形式存储数字和文本数据的存储方式.纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样的数据.CSV文件由任意数目的记录组成,记 ...
- 在Django中使用F()函数
F()允许Django在未实际链接数据的情况下具有对数据库字段的值的引用.通常情况下我们在更新数据时需要先从数据库里将原数据取出后方在内存里,然后编辑某些属性,最后提交.例如这样 # Tintin f ...
- kmalloc/kfree,vmalloc/vfree函数用法和区别
http://blog.csdn.net/tigerjibo/article/details/6412881 kmalloc/kfree,vmalloc/vfree函数用法和区别 1.kmalloc ...
- Python初学者第二十三天 函数进阶(2)装饰器
装饰器: 需求----> 写一个功能,测试其他同事函数的调用效率. 第一版:功能版 import time def func(): time.sleep(0.2) print('非常复杂') d ...
- static在C中有了第二种含义:用来表示不能被其它文件访问的全局变量和函数
C++变量根据定义位置的不同,具有不同的作用域,作用域可分为6种:全局作用域,局部作用域,语句作用域,类作用域,命名作用域和文件作用域. 从作用域看: 全局变量具有全局作用域.全局变量只需在一个源文件 ...
- MySQL存储过程中的3种循环,存储过程的基本语法,ORACLE与MYSQL的存储过程/函数的使用区别,退出存储过程方法
在MySQL存储过程的语句中有三个标准的循环方式:WHILE循环,LOOP循环以及REPEAT循环.还有一种非标准的循环方式:GOTO,不过这种循环方式最好别用,很容易引起程序的混乱,在这里就不错具体 ...
- JS的一些总结(函数声明和函数表达式的区别,函数中的this指向的问题,函数不同的调用方式,函数也是对象,数组中的函数调用)
一.函数声明和函数表达式的区别: 函数声明放在if——else语句中,在IE8中会出现问题 函数表达式则不会 <script> if(true){ function f1(){ conso ...
- 【VS开发】【C++开发】const在函数前与函数后的区别
const在函数前与函数后的区别 一 const基础 如果const关键字不涉及到指针,我们很好理解,下面是涉及到指针的情况: int b = ...
随机推荐
- js实现弹出窗口、页面变成灰色并不可操作的例子
function show() //显示隐藏层和弹出层 { var hideobj=document.getElementById("hidebg"); hidebg.style. ...
- Block使用要点
Block简介 Block其实包含两个部分内容 Block执行的代码,这是在编译的时候已经生成好的: 一个包含Block执行时需要的所有外部变量值的数据结构. Block将使用到的.作用域附近到的变量 ...
- 编写程序输入一个5x5的矩阵,将最大元素与中心元素交换,并按行列对齐输出。
编写程序输入一个5x5的矩阵,将最大元素与中心元素交换,并按行列对齐输出. 题目描述 编写程序输入一个5x5的矩阵,将最大元素与中心元素交换,并按行列对齐输出. 输入描述 编写程序输入一个5x5的矩阵 ...
- ubuntu中Mysql常用命令整理
启动mysql服务sudo /etc/init.d/mysql start 关闭mysql服务sudo /etc/init.d/mysql stop
- c 陷阱与缺陷(一)
1.程序在设计时,往往得出正确的结果,但是它并不是程序员自己想要的. 例如: printf("hello world!") 编译器进行编译时不会出现任何问题,但是结果: 提示竟然出 ...
- Android textview 设置不同的字体大小和颜色
在实际应用中,需要将一个字符串已不同的颜色,字体显示出来.当然完全可以通过不同textview拼接出来.也可以通过一个textview来展示. 步骤如下: 1.定义不同style . 不妨如下定义2个 ...
- C# JSON各种查找法
http://blog.csdn.net/yangxiaojun9238/article/details/8490319
- 编写一个程序实现strcat函数的功能
写自己的strcat函数------→mycat #include <stdio.h> #include <string.h> #define N 5 char *mycat( ...
- Java判断字符串是否为空的三种方法
方法一: 最多人使用的一个方法, 直观, 方便, 但效率很低.1: if(s == null || s.equals("")); 方法二: 比较字符串长度, 效率高, 是我知道的最 ...
- C#实现微信开发
C#实现微信开发前奏 不想废话,直接写了!因为是留给自己做随笔的,所以大神们看到别喷…… 1.必须有微信公众账号 2.你也可以申请测试微信号,链接给你 http://mp.weixin.qq.co ...