『壹』 kindeditor 編輯器php的詳細配置方法
通過使用KE.show(config)方法即可將編輯器添加到文檔中。下面是一段源碼:
KE.show = function(args) {
KE.init(args);
KE.event.ready(function() { KE.create(args.id); });
};
從源碼中可以看出,有兩種使用編輯器的方法:
法一:KE.show(config);
法二:KE.init(config);KE.create(id);
·無論使用哪種方式使用KindEditor編輯器,都必須進行參數配置;
·可以在KE.show()和KE.init()方法中傳遞配置參數config;
·配置參數config是一個對象,一般使用字面量對象;
·其中,id參數是唯一必須進行配置的,其他參數可以省略。
參數設置例子
KE.show({
id : "content_1",
width : "70%", //編輯器的寬度為70%
height : "200px", //編輯器的高度為100px
filterMode : false, //不會過濾HTML代碼
resizeMode : 1 //編輯器只能調整高度
});
配置參數
1、id
TEXTAREA輸入框的ID,必須設置。
數據類型:String
2、items
配置編輯器的工具欄,其中"-"表示換行,"|"表示分隔符。
數據類型:Array
默認值:
['source', '|', 'fullscreen', 'undo', 'redo', 'print', 'cut', '', 'paste',
'plainpaste', 'wordpaste', '|', 'justifyleft', 'justifycenter', 'justifyright',
'justifyfull', 'insertorderedlist', 'insertunorderedlist', 'indent', 'outdent', 'subscript',
'superscript', '|', 'selectall', '-',
'title', 'fontname', 'fontsize', '|', 'textcolor', 'bgcolor', 'bold',
'italic', 'underline', 'strikethrough', 'removeformat', '|', 'image',
'flash', 'media', 'advtable', 'hr', 'emoticons', 'link', 'unlink', '|', 'about']
3、width
編輯器的寬度,可以設置px或%,比TEXTAREA輸入框樣式表寬度優先度高。
數據類型:String
默認值:TEXTAREA輸入框的寬度
注: 3.2版本開始支持。
4、height
編輯器的高度,只能設置px,比TEXTAREA輸入框樣式表高度優先度高。
數據類型:String
默認值:TEXTAREA輸入框的高度
注: 3.2版本開始支持。
5、minWidth
數據類型:Int
指定編輯器最小寬度,單位為px。
默認值:200
6、minHeight
數據類型:Int
指定編輯器最小高度,單位為px。
默認值:100
7、filterMode
數據類型:Boolean
true時過濾HTML代碼,false時允許輸入任何代碼。
默認值:false
注: 3.4以前版本的filterMode默認值為true。
8、htmlTags
指定要保留的HTML標記和屬性。哈希數組的key為HTML標簽名,value為HTML屬性數組,"."開始的屬性表示style屬性。
數據類型:Object
默認值:
{
font : ['color', 'size', 'face', '.background-color'],
span : ['style'],
div : ['class', 'align', 'style'],
table:['class', 'border', 'cellspacing', 'cellpadding', 'width', 'height', 'align', 'style'],
'td,th':['class', 'align', 'valign', 'width', 'height',
'colspan', 'rowspan', 'bgcolor', 'style'],
a : ['class', 'href', 'target', 'name', 'style'],
embed : ['src', 'width', 'height', 'type', 'loop', 'autostart', 'quality',
'style', 'align', 'allowscriptaccess', '/'],
img : ['src', 'width', 'height', 'border', 'alt', 'title', 'align', 'style', '/'],
hr : ['class', '/'],
br : ['/'],
'p,ol,ul,li,blockquote,h1,h2,h3,h4,h5,h6' : ['align', 'style'],
'tbody,tr,strong,b,sub,sup,em,i,u,strike' : []
}
註:filterMode為true時有效。3.4版本開始屬性可設置style,保留所有inline樣式。
9、resizeMode
2或1或0,2時可以拖動改變寬度和高度,1時只能改變高度,0時不能拖動。
數據類型:Int
默認值:2
10、skinType
風格類型,default或tinymce。
數據類型:String
默認值:default
註:3.4以前版本和3.4.1版本開始默認值為default,3.4版本的默認值為oxygen。
11、wyswygMode
可視化模式或代碼模式
數據類型:Boolean
默認值:true
12、cssPath
指定編輯器iframe document的CSS,用於設置可視化區域的樣式。
數據類型:String或Array
默認值:空
註:3.4.1版本開始可指定多個CSS文件。例如:cssPath : ['a.css', 'b.css']
13、skinsPath
指定編輯器的skins目錄,skins目錄存放風格的css文件和gif圖片。
數據類型:String
默認值:KE.scriptPath + 'skins/'
14、pluginsPath
指定編輯器的plugins目錄。
數據類型:String
默認值:KE.scriptPath + 'plugins/'
15、minChangeSize
undo/redo文字輸入最小變化長度,當輸入的文字變化小於這個長度時不會添加到undo堆棧里。
數據類型:Int
默認值:5
16、loadStyleMode
true時自動載入編輯器的CSS。
數據類型:Boolean
默認值:true
注: 3.4版本開始支持。
17、urlType
改變站內本地URL,可設置空、relative、absolute、domain。
空為不修改URL,relative為相對路徑,absolute為絕對路徑,domain為帶域名的絕對路徑。
數據類型:String
默認值:空
注: 3.4版本開始支持,3.4.1版本開始默認值為空。
18、newlineTag
設置回車換行標簽,可設置p、br。
數據類型:String
默認值:br
注: 3.4版本開始支持。
19、afterCreate
設置編輯器創建後執行的回調函數。
數據類型:Function
默認值:無
20、afterDialogCreate
設置彈出浮動框創建後執行的回調函數。
數據類型:Function
默認值:無
注: 3.4.3版本開始支持。
21、allowUpload
true或false,true時顯示上傳圖片標簽。
數據類型:Boolean
默認值:true
注: 3.4版本開始支持。
22、allowFileManager
true或false,true時顯示瀏覽伺服器圖片功能。
數據類型:Boolean
默認值:false
注: 3.4版本開始支持。
23、referMethod
設置referMethod後上傳圖片的POST參數里有referMethod。
數據類型:String
默認值:空
注: 3.4版本開始支持。
24、dialogAlignType
設置彈出框(dialog)的對齊類型,可設置page和空。
指定page時按當前頁面居中,指定空時按編輯器居中。
數據類型:String
默認值:page
注: 3.4.1版本開始支持。
25、imageUploadJson
指定上傳圖片的伺服器端程序。
數據類型:String
默認值:../../php/upload_json.php
注: 3.4.1版本開始支持。
26、fileManagerJson
指定瀏覽遠程圖片的伺服器端程序。
數據類型:String
默認值:../../php/file_manager_json.php
注: 3.4.1版本開始支持。
27、autoSetDataMode
true或false。
true時自動將編輯器內容設置到原來的textarea,也就是每次輸入內容就執行KE.util.setData函數。
數據類型:Boolean
默認值:true
注: 3.5版本開始支持。打開autoSetDataMode模式後會降低輸入性能,理想的做法是關閉autoSetDataMode,提交數據前執行KE.util.setData。
28、afterSetData
自動執行KE.util.setData後執行的回調函數,autoSetDataMode為true時有效。
數據類型:Function
默認值:無
注: 3.5版本開始支持。
29、shadowMode
true或false,true時彈出層顯示陰影。
數據類型:Boolean
默認值:true
注: 3.5版本開始支持。
30、allowPreviewEmoticons
true或false,true時滑鼠放在表情上可以預覽表情。
數據類型:Boolean
默認值:true
注: 3.5版本開始支持。
『貳』 php 正則表達式 只能包含字母和數字
式子:/^[a-zA-Z0-9]+$/u
釋義:
"/":表示正則表達式的定義,固定寫法。
"^":表示開頭。
"[]":表示字元組。匹配所包含的任意一個字元。如,「[ab]」匹配「plain」中的「a」。
"a-z":表示匹配小寫字母a-z的字母範圍。
"A-Z":表示匹配大寫字母A-Z的字母範圍。
"0-9":表示匹配0-9的數字范圍。
"+":表示匹配次數大於等於1。
"$":匹配輸入行尾。如果設置了RegExp對象Multiline屬性,$也匹配「 」或「 」之前的位置。
"u":最後的u是模式修飾符,嚴格的說可能叫預定義常量。表示使用unicode進行匹配。
(2)php對象設置屬性擴展閱讀:
其它正則表達式符號的含義:
1、"*":匹配前面的子表達式任意次。例如,zo*能匹配「z」,也能匹配「zo」以及「zoo」。*等價於{0,}。
2、"?":匹配前面的子表達式零次或一次。例如,「do(es)?」可以匹配「do」或「does」。?等價於{0,1}。
3、"{n}":n是一個非負整數。匹配確定的n次。例如,「o{2}」不能匹配「Bob」中的「o」,但是能匹配「food」中的兩個o。
4、"{n,}":n是一個非負整數。至少匹配n次。例如,「o{2,}」不能匹配「Bob」中的「o」,但能匹配「foooood」中的所有o。「o{1,}」等價於「o+」。「o{0,}」則等價於「o*」。
5、"{n,m}":m和n均為非負整數,其中n<=m。最少匹配n次且最多匹配m次。例如,「o{1,3}」將匹配「fooooood」中的前三個o為一組,後三個o為一組。「o{0,1}」等價於「o?」。請注意在逗號和兩個數之間不能有空格。
『叄』 php彈出「undefined property:stdclass」 ,怎麼解決
這種情況一般是你對一個類對象,使用了屬性調用造成的。
比如應該是
echo$a->att1;
你寫錯成了:
echo$a['att1'];
改回來就可以了。
PHP中使用關鍵字 class 來定義一個類。類的命名一般使用首字元大寫,而後每個單詞首字元大寫連接的方式方便閱讀。
在PHP5中,屬性指在class 中聲明的變數。在聲明變數時,必須使用 public private protected 之一進行修飾,定義變數的訪問許可權。PHP中的屬性:用來描述對象的數據元素稱為對象的屬性(也稱為數據/狀態)
Public(公開): 可以自由的在類的內部外部讀取、修改。
Private(私有): 只能在這個當前類的內部讀取、修改。
Protected(受保護):能夠在這個類和類的子類中讀取和修改。屬性的使用:通過引用變數的 -> 符號調用變數指向對象的屬性。
在方法內部通過 $this-> 符號調用同一對象的屬性。
所以應該用箭頭調用而不是括弧。
『肆』 php菜鳥提問~面向對象里的對私有欄位成員的賦值取值操作時採用攔截器……
現在,老師只是給你看了個簡單的例子
實際用途中,是很有用的,比如你需要傳入大量的變數 或者 你需要賦值的變數需要進行安全判斷或者類型判斷等。 下面是一個簡單的例子,希望可以幫到你
classcla{
private$a=array();
publicfunction__set($key,$value){
$this->a[$key]=$value;
}
publicfunction__get($key){
return$this->a[$key];
}
}
$cla=newcla();
$cla->b1='b1';
$cla->b2='b2';
echo$cla->b1;
echo'<br>';
echo$cla->b2;
這個代碼 在很多介面調用中,經常用到
『伍』 在php中如何設置類的屬性,如何調用類的方法
PHP訪問類的屬性、方法使用箭頭語法(->)。這里我給你一個例子供你參考:
<?php
classMyClass{//定義MyClass類
public$name;//定義了一個公有屬性
protected$_age;//定義了一個保護屬性
private$_email;//定義了一個私有屬性
publicfunctionmy_method(){//定義my_method方法
}
protectedfunction_my_method2(){//定義_my_method2方法
}
}
$obj=newMyClass;//實例化
$obj->name='noname';//設置name屬性
$obj->_age=12;//這是錯誤的,不能設置保護屬性
$obj->address='KingStreet.'//設置一個未聲明的屬性是允許的,效果和公有屬性類似,但未賦值前不能使用。
$obj->my_method()//調用公有方法
$obj->_my_method2();//這是錯誤的,不能調用保護方法
你需要理解繼承、公有、保護和私有的概念。
繼承:子類繼承父類的公有、保護屬性和方法。
公有:類的實例可以訪問的屬性和方法。
保護:只能在類的內部及其子類內部訪問的屬性和方法。
私有:只能在類的內部訪問的屬性和方法。
這是個很基礎的問題,建議你多看書。