Subversion Repositories php-qbpwcf

Rev

Rev 178 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
3 liveuser 1
<?php
2
 
3
/*
4
 
5
	QBPWCF, Quick Build PHP website Component base on Fedora Linux.
6
    Copyright (C) 2014~2025 Min-Jhin,Chen
7
 
8
    This file is part of QBPWCF.
9
 
10
    QBPWCF is free software: you can redistribute it and/or modify
11
    it under the terms of the GNU General Public License as published by
12
    the Free Software Foundation, either version 3 of the License, or
13
    (at your option) any later version.
14
 
15
    QBPWCF is distributed in the hope that it will be useful,
16
    but WITHOUT ANY WARRANTY; without even the implied warranty of
17
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18
    GNU General Public License for more details.
19
 
20
    You should have received a copy of the GNU General Public License
21
    along with QBPWCF.  If not, see <http://www.gnu.org/licenses/>.
22
 
23
*/
24
namespace qbpwcf;
25
 
26
/*
27
類別說明:
28
用來建立css樣式的類別.
29
備註:
30
無.
31
*/
32
class css{
33
 
34
	/*
35
	#函式說明:
36
	#當前類別被呼叫的靜態方法不存在時,將會執行該函數,回報該方法不存在.
37
	#回傳結果:
38
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
39
	#$reuslt["error"],執行不正常結束的錯訊息陣列.
40
	#$result["function"],當前執行的函式名稱.
41
	#必填參數:
42
	#$method,物件,為物件實體或類別名稱,會自動置入該參數.
43
	#$arguments,陣列,為呼叫方法時所用的參數.
44
	#參考資料:
45
	#__call=>http://php.net/manual/en/language.oop5.overloading.php#object.callstatic
46
	*/
47
	public function __call($method,$arguments){
48
 
49
		#取得當前執行的函式
50
		$result["function"]=__FUNCTION__;
51
 
52
		#設置執行不正常
53
		$result["status"]="false";
54
 
55
		#設置執行錯誤
56
		$result["error"][]=__NAMESPACE__ ."/".$method."() 不存在!";
57
 
58
		#設置所丟入的參數
59
		$result["error"][]=$arguments;
60
 
61
		#回傳結果
62
		return $result;
63
 
64
		}#function __call end
65
 
66
	/*
67
	#函式說明:
68
	#當前類別被呼叫的靜態方法不存在時,將會執行該函數,回報該方法不存在.
69
	#回傳結果:
70
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
71
	#$reuslt["error"],執行不正常結束的錯訊息陣列.
72
	#$result["function"],當前執行的函式名稱.
73
	#必填參數:
74
	#$method,物件,為物件實體或類別名稱,會自動置入該參數.
75
	#$arguments,陣列,為呼叫方法時所用的參數.
76
	#參考資料:
77
	#__call=>http://php.net/manual/en/language.oop5.overloading.php#object.callstatic
78
	*/
79
	public static function __callStatic($method,$arguments){
80
 
81
		#取得當前執行的函式
82
		$result["function"]=__FUNCTION__;
83
 
84
		#設置執行不正常
85
		$result["status"]="false";
86
 
87
		#設置執行錯誤
88
		$result["error"][]="欲呼叫的". __NAMESPACE__ ."/".$method."() 不存在!";
89
 
90
		#設置所丟入的參數
91
		$result["error"][]=$arguments;
92
 
93
		#回傳結果
94
		return $result;
95
 
96
		}#function __callStatic end
97
 
98
	/*
99
	#函式說明:
100
	#創建針對html標籤的立即css樣式或限定套用類型的css樣式.
101
	#回傳結果:
102
	#$result["status"],執行是否正常,"true"代表正常;"false"代表不正常.
103
	#$result["error"],涵式錯誤訊息陣列
104
	#$result["content"],css語法
105
	#$result["function"],當前執行的函式名稱.
106
	#$result["argu"],所使用的參數.
107
	#必填參數:
108
	#$conf["htmlTagName"],字串陣列,為多個要套用樣式的html標籤名稱,若有階層請用「>」表示,ex:「a:hover」代表在<a></a>上滑過去時的樣式;若有從上而下的層級關係,則請用「>」表示,ex:「div>span>img」,就是針對有div標籤裡面的span標籤裡面的img標籤內容的樣式;也可以針對使用特定類別的html標籤來套用css樣式,ex:「div.pink」,就是針對套用pink類別的div標籤來套用css樣式;可以指定擁有特定屬性的標籤與class的元素來套用css樣式,ex:「div['data-selected=true'].specifyClassName」。
109
	$conf["htmlTagName"]=array("");
110
	#$conf["attributes"],字串陣列,為屬性名稱
111
	$conf["attributes"]=array("");
112
	#$conf["content"],字串陣列,為屬性值
113
	$conf["content"]=array("");
114
	#可省略參數:
115
	#無.
116
	#參考資料:
117
	#無.
118
	#備註:
119
	#無.
120
	*/
121
	public static function createApplyCssStyle(&$conf){
122
 
123
		#初始化要回傳的變數
124
		$result=array();
125
 
126
		#初始化要回傳的變數
127
		$result["content"]="";
128
 
129
		#初始化當前執行的函數名稱
130
		$result["funciton"]=__FUNCTION__;
131
 
132
		#如果 $conf 不為陣列
133
		if(gettype($conf)!="array"){
134
 
135
			#設置執行失敗
136
			$result["status"]="false";
137
 
138
			#設置執行錯誤訊息
139
			$result["error"][]="\$conf變數須為陣列形態";
140
 
141
			#如果傳入的參數為 null
142
			if($conf==null){
143
 
144
				#設置執行錯誤訊息
145
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
146
 
147
				}#if end
148
 
149
			#回傳結果
150
			return $result;
151
 
152
			}#if end
153
 
154
		#取得參數
155
		$result["argu"]=$conf;
156
 
157
		#檢查參數
158
		#函式說明:
159
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
160
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
161
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
162
		#$result["function"],當前執行的函式名稱.
163
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
164
		#$result[$shouldBtCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
165
		#$result[$shouldBtCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
166
		#$result[$shouldBtCheckedVarName]["error"],每個參數設定的錯誤訊息
167
		#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
168
		#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
169
		#$result["notNeedVar"],字串陣列,多餘的參數名稱.
170
		#必填寫的參數:
171
		#$conf["variableCheck::checkArguments"]["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
172
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
173
		#$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
174
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("htmlTagName","attributes","content");
175
		#$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列 例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double");
176
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("array","array","array");
177
		#$conf["variableCheck::checkArguments"]["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
178
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
179
		#可以省略的參數:
180
		#$conf["variableCheck::checkArguments"]["canBeEmptyString"],必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true"。
181
		$conf["variableCheck::checkArguments"]["canBeEmptyString"]="false";
182
		#$conf["variableCheck::checkArguments"]["skipableVariableName"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
183
		#$conf["variableCheck::checkArguments"]["skipableVariableName"]=array("ssl","serverIp","port");
184
		#$conf["variableCheck::checkArguments"]["skipableVariableType"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
185
		#$conf["variableCheck::checkArguments"]["skipableVariableType"]=array("string","string","string");
186
		#$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是必填參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
187
		#$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"]=array("true","127.0.0.1",null);
188
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
189
		#$conf["arrayCountEqualCheck"][]=array();
190
		#參考資料來源:
191
		#array_keys=>http://php.net/manual/en/function.array-keys.php
192
		$checkResult=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
193
		unset($conf["variableCheck::checkArguments"]);
194
 
195
		#如果檢查失敗
196
		if($checkResult["status"]=="false"){
197
 
198
			#設置執行不正常
199
			$result["status"]="false";
200
 
201
			#設置錯誤訊息
202
			$result["error"]=$checkResult;
203
 
204
			#回傳結果
205
			return $result;
206
 
207
			}#if end
208
 
209
		#如果檢查不通過
210
		if($checkResult["passed"]=="false"){
211
 
212
			#設置執行不正常
213
			$result["status"]="false";
214
 
215
			#設置錯誤訊息
216
			$result["error"]=$checkResult;
217
 
218
			#回傳結果
219
			return $result;
220
 
221
			}#if end
222
 
223
		#設置css語法的開始
224
		$result["content"]="<style type=\"text/css\">";
225
 
226
		#有幾個標籤就執行幾次
227
		for($i=0;$i<count($conf["htmlTagName"]);$i++){
228
 
229
			#如果是第一個標籤
230
			if($i==0){
231
 
232
				#設置標籤名稱
233
				$result["content"]=$result["content"].$conf["htmlTagName"][$i];
234
 
235
				}#if end
236
 
237
			#反之
238
			else{
239
 
240
				#設置標籤名稱
241
				$result["content"]=$result["content"].",".$conf["htmlTagName"][$i];
242
 
243
				}#else end
244
 
245
			}#for end
246
 
247
		#設置標籤名稱
248
		$result["content"]=$result["content"]."{";
249
 
250
		#看有幾個屬性就執行幾次迴圈
251
		for($i=0;$i<count($conf["attributes"]);$i++){
252
 
253
			#如果屬性與屬性值不為字串
254
			if(gettype($conf["attributes"][$i])!=="string" || gettype($conf["content"][$i])!=="string"){
255
 
256
				#設置執行不正常
257
				$result["status"]="false";
258
 
259
				#設置錯誤訊息
260
				$result["error"][]="參數 attributes, content 須為一維陣列字串";
261
 
262
				#回傳結果
263
				return $result;
264
 
265
				}#if end
266
 
267
			#設置屬性與數值內容
268
			$result["content"]=$result["content"].$conf["attributes"][$i].":".$conf["content"][$i].";" ;
269
 
270
			}#for end
271
 
272
		#設置css語法的結束
273
		$result["content"]=$result["content"]."}</style>";
274
 
275
		#設置執行正常
276
		$result["status"]="true";
277
 
278
		#回傳結果
279
		return $result;
280
 
281
		}#function createApplyCssStyle end
282
 
283
	/*
284
	#函式說明:
285
	#創建 css 樣式,前面會自動加上「.」.
286
	#回傳結果:
287
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
288
	#$result["content"],css語法
289
	#$result["function"],當前執行的函數
290
	#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
291
	#$result["styleName"],字串,$conf["cssStyleName"]的值.
292
	#必填參數:
293
	$conf["cssStyleName"]="";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
294
	$conf["attributes"]=array("");#為屬性名稱,須為陣列值
295
	$conf["content"]=array("");#為屬性值,須為陣列值
296
	#可省略參數:
297
	#無.
298
	#參考資料:
299
	#無.
300
	#備註:
301
	#無.
302
	*/
303
	public static function createCssStyle(&$conf){
304
 
305
		#初始化要回傳的內容
306
		$result=array();
307
 
308
		#設置當前執行的函數
309
		$result["function"]=__FUNCTION__;
310
 
311
		#初始化css樣式內容
312
		$result["content"]="";
313
 
314
		#如果 $conf 不為陣列
315
		if(gettype($conf)!="array"){
316
 
317
			#設置執行失敗
318
			$result["status"]="false";
319
 
320
			#設置執行錯誤訊息
321
			$result["error"][]="\$conf變數須為陣列形態";
322
 
323
			#如果傳入的參數為 null
324
			if($conf==null){
325
 
326
				#設置執行錯誤訊息
327
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
328
 
329
				}#if end
330
 
331
			#回傳結果
332
			return $result;
333
 
334
			}#if end
335
 
336
		#檢查參數
337
		#函式說明:
338
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
339
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
340
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
341
		#$result["function"],當前執行的函式名稱.
342
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
343
		#$result[$shouldBtCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
344
		#$result[$shouldBtCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
345
		#$result[$shouldBtCheckedVarName]["error"],每個參數設定的錯誤訊息
346
		#必填寫的參數:
347
		#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
348
		$conf["variableCheck.checkArguments"]["varInput"]=&$conf;
349
		#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
350
		$conf["variableCheck.checkArguments"]["mustBeFilledVariableName"]=array("cssStyleName","attributes","content");
351
		#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列 例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double");
352
		$conf["variableCheck.checkArguments"]["mustBeFilledVariableType"]=array("string","array","array");
353
		#$conf["variableCheck::checkArguments"]["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
354
		$conf["variableCheck.checkArguments"]["referenceVarKey"]="variableCheck.checkArguments";
355
		#可以省略的參數:
356
		#$conf["canBeEmptyString"],必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"false"。
357
		#$conf["canBeEmptyString"]="false";
358
		#$conf["skipableVariableName"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
359
		#$conf["skipableVariableName"]=array();
360
		#$conf["skipableVariableType"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
361
		#$conf["skipableVariableType"]=array();
362
		#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,"null"代表不指定.
363
		#$conf["skipableVarDefaultValue"]=array("");
364
		$checkResult=variableCheck::checkArguments($conf["variableCheck.checkArguments"]);
365
		unset($conf["variableCheck.checkArguments"]);
366
 
367
		#如果檢查失敗
368
		if($checkResult["status"]=="false"){
369
 
370
			#設置執行不正常
371
			$result["status"]="false";
372
 
373
			#程式停止執行
374
			$result["error"]=$checkResult;
375
 
376
			#回傳結果
377
			return $result;
378
 
379
			}#if end
380
 
381
		#如果檢查不通過
382
		if($checkResult["passed"]=="false"){
383
 
384
			#設置執行不正常
385
			$result["status"]="false";
386
 
387
			#程式停止執行
388
			$result["error"]=$checkResult;
389
 
390
			#回傳結果
391
			return $result;
392
 
393
			}#if end
394
 
395
		#取得css類別樣式名稱
396
		$result["styleName"]=$conf["cssStyleName"];
397
 
398
		#css 語法開始
399
		$result["content"]=$result["content"]."<style type=\"text/css\">";
400
 
401
		#樣式開始
402
		$result["content"]=$result["content"].".".$conf["cssStyleName"]."{";
403
 
404
		#取得有幾個屬性和內容
405
		$attributesCount=count($conf["attributes"]);
406
		$contentCount=count($conf["content"]);
407
 
408
		#如果屬性和內容的數目不一致
409
		if($attributesCount!=$contentCount){
410
 
411
			#設置執行不正常
412
			$result["status"]="false";
413
 
414
			#程式停止執行
415
			$result["error"][]="屬性和內容的數目不一致,請檢查參數是否正確!";
416
 
417
			#回傳結果
418
			return $result;
419
 
420
			}#if end
421
 
422
		#屬性和內容的數目相符
423
		else{
424
 
425
			#看有幾個屬性就執行幾次迴圈
426
			for($i=0;$i<$attributesCount;$i++){
427
 
428
				$result["content"]=$result["content"].$conf["attributes"][$i].":".$conf["content"][$i].";" ;
429
 
430
				}#for end
431
 
432
			#樣式結束
433
			$result["content"]=$result["content"]."}";
434
 
435
			#css 語法結束
436
			$result["content"]=$result["content"]."</style> ";
437
 
438
			}#else end
439
 
440
		#執行到這邊代表執行成功
441
		$result["status"]="true";
442
 
443
		#回傳結果
444
		return $result;
445
 
446
		}#函式結束
447
 
448
	/*
449
	#函式說明:
450
	#建立給與html標籤使用的style屬性字串.
451
	#回傳結果:
452
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
453
	#$result["function"],當前執行的函數
454
	#$result["error"],錯誤訊息陣列
455
	#$result["content"],css設定內容
456
	#必填參數:
457
	$conf["styleName"]=array("");#為屬性名稱,須為陣列值
458
	$conf["styleValue"]=array("");#為屬性值,須為陣列值
459
	#可省略參數:
460
	#無.
461
	#參考資料:
462
	#無.
463
	#備註:
464
	#無.
465
	*/
466
	public static function styleStr(&$conf){
467
 
468
		#初始化要回傳的結果
469
		$result=array();
470
 
471
		#取得當前執行的函數名稱
472
		$result["function"]=__FUNCTION__;
473
 
474
		#設置style語句
475
		$result["content"]="";
476
 
477
		#如果沒有參數
478
		if(func_num_args()==0){
479
 
480
			#設置執行失敗
481
			$result["status"]="false";
482
 
483
			#設置執行錯誤訊息
484
			$result["error"]="函數".$result["function"]."需要參數";
485
 
486
			#回傳結果
487
			return $result;
488
 
489
			}#if end
490
 
491
		#如果 $conf 不為陣列
492
		if(gettype($conf)!="array"){
493
 
494
			#設置執行失敗
495
			$result["status"]="false";
496
 
497
			#設置執行錯誤訊息
498
			$result["error"][]="\$conf變數須為陣列形態";
499
 
500
			#如果傳入的參數為 null
501
			if($conf==null){
502
 
503
				#設置執行錯誤訊息
504
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
505
 
506
				}#if end
507
 
508
			#回傳結果
509
			return $result;
510
 
511
			}#if end
512
 
513
		#檢查參數
514
		#函式說明:
515
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
516
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
517
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
518
		#$result["function"],當前執行的函式名稱.
519
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
520
		#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
521
		#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
522
		#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
523
		#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
524
		#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
525
		#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
526
		#$result["notNeedVar"],字串陣列,多餘的參數名稱.
527
		#必填寫的參數:
528
		#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
529
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
530
		#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
531
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("styleName","styleValue");
532
		#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
533
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("array","array");
534
		#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
535
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
536
		#可以省略的參數:
537
		#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
538
		#$conf["canBeEmptyString"]="false";
539
		#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或集合.
540
		#$conf["skipableVariableCanNotBeEmpty"]=array();
541
		#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
542
		#$conf["skipableVariableName"]=array();
543
		#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
544
		#$conf["skipableVariableType"]=array();
545
		#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
546
		#$conf["skipableVarDefaultValue"]=array("");
547
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
548
		$conf["variableCheck::checkArguments"]["arrayCountEqualCheck"][]=array("styleName","styleValue");
549
		#參考資料來源:
550
		#array_keys=>http://php.net/manual/en/function.array-keys.php
551
		$checkArguments=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
552
		unset($conf["variableCheck::checkArguments"]);
553
 
554
		#如果檢查參數失敗
555
		if($checkArguments["status"]=="false"){
556
 
557
			#設置執行失敗
558
			$result["status"]="false";
559
 
560
			#設置執行錯誤
561
			$result["error"]=$checkArguments;
562
 
563
			#回傳結果
564
			return $result;
565
 
566
			}#if end
567
 
568
		#如果檢查參數不通過
569
		if($checkArguments["passed"]=="false"){
570
 
571
			#設置執行失敗
572
			$result["status"]="false";
573
 
574
			#設置執行錯誤
575
			$result["error"]=$checkArguments;
576
 
577
			#回傳結果
578
			return $result;
579
 
580
			}#if end
581
 
582
		#依據 $conf["styleName"] 的數量
583
		for($i=0;$i<count($conf["styleName"]);$i++){
584
 
585
			#如果是第一個元素
586
			if($i==0){
587
 
588
				#設置style屬性與第一個css樣式
589
				$result["content"]=$result["content"]."style=\"".$conf["styleName"][$i].":".$conf["styleValue"][$i].";";
590
 
591
				}#if end
592
 
593
			#反之
594
			else{
595
 
596
				#設置css樣式
597
				$result["content"]=$result["content"].$conf["styleName"][$i].":".$conf["styleValue"][$i].";";
598
 
599
				}#else end
600
 
601
			#如果是最後一個元素
602
			if($i==count($conf["styleName"])-1){
603
 
604
				#加上結尾的 「"」
605
				$result["content"]=$result["content"]."\"";
606
 
607
				}#if end
608
 
609
			}#foreach end
610
 
611
		#設置執行正常
612
		$result["status"]="true";
613
 
614
		#回傳結果
615
		return $result;
616
 
617
		}#function styleStr end
618
 
619
	/*
620
	#函式說明:
621
	#建立class屬性字串,亦即套用多個class樣式的設定字串.
622
	#回傳結果:
623
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
624
	#$result["function"],當前執行的函數
625
	#$result["error"],錯誤訊息陣列
626
	#$result["content"],class屬性字串的內容
627
	#必填參數:
628
	#$conf["class"],字串陣列,要套用的類別樣式名稱.
629
	$conf["class"]=array();
630
	#可省略參數:
631
	#無.
632
	#參考資料:
633
	#無.
634
	#備註:
635
	#無.
636
	*/
637
	public static function classStr(&$conf){
638
 
639
		#初始化要回傳的結果
640
		$result=array();
641
 
642
		#取得當前執行的函數名稱
643
		$result["function"]=__FUNCTION__;
644
 
645
		#如果沒有參數
646
		if(func_num_args()==0){
647
 
648
			#設置執行失敗
649
			$result["status"]="false";
650
 
651
			#設置執行錯誤訊息
652
			$result["error"]="函數".$result["function"]."需要參數";
653
 
654
			#回傳結果
655
			return $result;
656
 
657
			}#if end
658
 
659
		#取得參數
660
		$result["argu"]=$conf;
661
 
662
		#如果 $conf 不為陣列
663
		if(gettype($conf)!="array"){
664
 
665
			#設置執行失敗
666
			$result["status"]="false";
667
 
668
			#設置執行錯誤訊息
669
			$result["error"][]="\$conf變數須為陣列形態";
670
 
671
			#如果傳入的參數為 null
672
			if($conf==null){
673
 
674
				#設置執行錯誤訊息
675
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
676
 
677
				}#if end
678
 
679
			#回傳結果
680
			return $result;
681
 
682
			}#if end
683
 
684
		#檢查參數
685
		#函式說明:
686
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
687
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
688
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
689
		#$result["function"],當前執行的函式名稱.
690
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
691
		#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
692
		#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
693
		#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
694
		#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
695
		#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
696
		#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
697
		#$result["notNeedVar"],字串陣列,多餘的參數名稱.
698
		#必填寫的參數:
699
		#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
700
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
701
		#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
702
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("class");
703
		#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
704
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("array");
705
		#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
706
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
707
		#可以省略的參數:
708
		#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
709
		#$conf["canBeEmptyString"]="false";
710
		#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或集合.
711
		#$conf["skipableVariableCanNotBeEmpty"]=array();
712
		#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
713
		#$conf["skipableVariableName"]=array();
714
		#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
715
		#$conf["skipableVariableType"]=array();
716
		#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
717
		#$conf["skipableVarDefaultValue"]=array("");
718
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
719
		#$conf["variableCheck::checkArguments"]["arrayCountEqualCheck"][]=array("styleName","styleValue");
720
		#參考資料來源:
721
		#array_keys=>http://php.net/manual/en/function.array-keys.php
722
		$checkArguments=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
723
		unset($conf["variableCheck::checkArguments"]);
724
 
725
		#如果檢查參數失敗
726
		if($checkArguments["status"]=="false"){
727
 
728
			#設置執行失敗
729
			$result["status"]="false";
730
 
731
			#設置執行錯誤
732
			$result["error"]=$checkArguments;
733
 
734
			#回傳結果
735
			return $result;
736
 
737
			}#if end
738
 
739
		#如果檢查參數不通過
740
		if($checkArguments["passed"]=="false"){
741
 
742
			#設置執行失敗
743
			$result["status"]="false";
744
 
745
			#設置執行錯誤
746
			$result["error"]=$checkArguments;
747
 
748
			#回傳結果
749
			return $result;
750
 
751
			}#if end
752
 
753
		#將$conf["class"]轉換為陣列
754
		#函式說明:
755
		#將一維陣列轉換為用特定符號間隔的字串,ex:array("1","2","3") to "a;b;c;".
756
		#回傳的結果:
757
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
758
		#$result["function"],當前執行的function名稱
759
		#$result["error"],錯誤訊息陣列.
760
		#$result["content"],處理好的字串.
761
		#必填的參數:
762
		#$conf["inputArray"],字串陣列,要轉成字串的一維陣列.
763
		$conf["arrays::arrayToString"]["inputArray"]=$conf["class"];
764
		#可省略的參數:
765
		#$conf["spiltSymbol"],字串,用來區隔字串的符號,預設為;
766
		$conf["arrays::arrayToString"]["spiltSymbol"]=" ";
767
		$arrayToString=arrays::arrayToString($conf["arrays::arrayToString"]);
768
		unset($conf["arrays::arrayToString"]);
769
 
770
		#如果轉換失敗
771
		if($arrayToString["status"]=="false"){
772
 
773
			#設置執行失敗
774
			$result["status"]="false";
775
 
776
			#設置執行錯誤
777
			$result["error"]=$arrayToString;
778
 
779
			#回傳結果
780
			return $result;
781
 
782
			}#if end
783
 
784
		#取得類別字串
785
		$result["content"]=$arrayToString["content"];
786
 
787
		#如果類別字串不等於 ""
788
		if($result["content"]!=""){
789
 
790
			#放置 class 屬性
791
			$result["content"]="class=\"".$result["content"]."\"";
792
 
793
			}#if end
794
 
795
		#設置執行正常
796
		$result["status"]="true";
797
 
798
		#回傳結果
799
		return $result;
800
 
801
		}#function classStr end
802
 
803
	/*
804
	#函式說明:
805
	#將網頁內容置中的開始樣式需與 divCetnerEnd() 搭配,這兩者之間的內容都將會置中。
806
	#回傳結果:
807
	#字串,讓區塊至中的語法開始
808
	#必填參數:
809
	#無.
810
	#可省略參數:
811
	#無.
812
	#參考資料:
813
	#無.
814
	#備註:
815
	#無.
816
	*/
817
	public static function divCenterStart(){
818
 
819
		return "<div align = center>";
820
 
821
		}#function end
822
 
823
	/*
824
	#函式說明:
825
	#將網頁內容置中的結束樣式需與 divCetnerStart() 搭配,這兩者之間的內容都將會置中。
826
	#回傳結果:
827
	#字串,讓區塊至中的語法結束
828
	#必填參數:
829
	#無.
830
	#可省略參數:
831
	#無.
832
	#參考資料:
833
	#無.
834
	#備註:
835
	#無.
836
	*/
837
	public static function divCenterEnd(){
838
 
839
		return "</div>";
840
 
841
		}#function  end
842
 
843
	/*
844
	#函式說明:
845
	#<span>區塊,裡面可以指定css的class樣式,可以指定提示文字,若要使用移動的css樣式,請改用divSection函數.
846
	#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
847
	#$result["functin"],字串,當前函數的名稱.
848
	#$result["error"],陣列,錯訊訊息.
849
	#$result["content"],字串,含有<span>標籤的內容.
850
	#必填參數:
851
	#$conf["contentArray"],字串陣列,要放入的內容陣列.
852
	$conf["contentArray"]=array();
853
	#可省略參數
854
	#$conf["id"],字串,span元素的id.
855
	#$conf["id"]="";
856
	#$conf["styleAttr"],字串陣列,給div區段要套用的style樣式屬性.
857
	#$conf["styleAttr"]=array();
858
	#$conf["styleVal"],字串陣列,給div區段要套用的style樣式數值.
859
	#$conf["styleVal"]=array();
860
	#$conf["class"],字串,span區段要套用的css樣式.
861
	#$conf["class"]="";
862
	#$conf["title"],陣列,滑鼠移到上面時要顯示的內容,每個元素代表一列內容
863
	#$conf["title"]=array();
864
	#$conf["data"],字串陣列,每個data屬性名稱為數值內容,例如array("a"=>"A","b"=>"B")
865
	#$conf["data"]=array();
866
	#參考資料:
867
	#無.
868
	#備註:
869
	#無.
870
	*/
871
	public static function spanSection(&$conf){
872
 
873
		#初始化要回傳的內容
874
		$result=array();
875
 
876
		#設置當前執行的函數
877
		$result["function"]=__FUNCTION__;
878
 
879
		#初始化css樣式內容
880
		$result["css"]="";
881
 
882
		#如果 $conf 不為陣列
883
		if(gettype($conf)!="array"){
884
 
885
			#設置執行失敗
886
			$result["status"]="false";
887
 
888
			#設置執行錯誤訊息
889
			$result["error"][]="\$conf變數須為陣列形態";
890
 
891
			#如果傳入的參數為 null
892
			if($conf===null){
893
 
894
				#設置執行錯誤訊息
895
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
896
 
897
				}#if end
898
 
899
			#回傳結果
900
			return $result;
901
 
902
			}#if end
903
 
904
		#檢查參數
905
		#函式說明:
906
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
907
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
908
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
909
		#$result["function"],當前執行的函式名稱.
910
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
911
		#$result[$shouldBtCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
912
		#$result[$shouldBtCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
913
		#$result[$shouldBtCheckedVarName]["error"],每個參數設定的錯誤訊息
914
		#必填寫的參數:
915
		#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
916
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
917
		#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
918
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("contentArray");
919
		#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列 例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double");
920
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("array");
921
		#$conf["variableCheck::checkArguments"]["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
922
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
923
		#可以省略的參數:
924
		#$conf["canBeEmptyString"],必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true"。
925
		#$conf["variableCheck::checkArguments"]["canBeEmptyString"]="true";
926
		#$conf["skipableVariableName"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
927
		$conf["variableCheck::checkArguments"]["skipableVariableName"]=array("id","styleAttr","styleVal","class","title","data");
928
		#$conf["skipableVariableType"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
929
		$conf["variableCheck::checkArguments"]["skipableVariableType"]=array("string","array","array","string","array","array");
930
		#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null代表不指定,若預設值是必填參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
931
		$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"]=array(null,null,null,null,null,null);
932
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
933
		#$conf["arrayCountEqualCheck"][]=array();
934
		$checkResult=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
935
		unset($conf["variableCheck::checkArguments"]);
936
 
937
		#如果檢查失敗
938
		if($checkResult["status"]==="false"){
939
 
940
			#設置執行不正常
941
			$result["status"]="false";
942
 
943
			#設置錯誤訊息
944
			$result["error"]=$checkResult;
945
 
946
			#回傳結果
947
			return $result;
948
 
949
			}#if end
950
 
951
		#如果檢查不通過
952
		if($checkResult["passed"]==="false"){
953
 
954
			#設置執行不正常
955
			$result["status"]="false";
956
 
957
			#設置錯誤訊息
958
			$result["error"]=$checkResult;
959
 
960
			#回傳結果
961
			return $result;
962
 
963
			}#if end
964
 
965
		#debug
966
		#var_dump($conf);
967
 
968
		#如果 $conf["class"] 不為 null
969
		if(isset($conf["class"])!=null){
970
 
971
			#套用css class設定
972
			$conf["class"]=$conf["class"]=" class='".$conf["class"]."' ";
973
 
974
			}#if end
975
 
976
		#反之為 null
977
		else{
978
 
979
			#設為空字串
980
			$conf["class"]="";
981
 
982
			}#else end
983
 
984
		#如果 $conf["title"] 沒有設定
985
		if(!isset($conf["title"])){
986
 
987
			#設置為 ""
988
			$conf["title"]="";
989
 
990
			}#if end
991
 
992
		#反之 $conf["title"] 有設定
993
		else{
994
 
995
			#套用title設定
996
 
997
			#另存 $conf["title"] 的內容
998
			$tempTitleArray=$conf["title"];
999
 
1000
			#初始化title設定
1001
			$conf["title"]=$conf["title"]=" title='";
1002
 
1003
			#$conf["title"]有幾個元素就執行幾次
1004
			for($i=0;$i<count($tempTitleArray);$i++){
1005
 
1006
				#串接提示內容
1007
				$conf["title"]=$conf["title"].$tempTitleArray[$i]."\r\n";
1008
 
1009
				}#for end
1010
 
1011
			#title設定的結束
1012
			$conf["title"]=$conf["title"]."'";
1013
 
1014
			}#else end
1015
 
1016
		#初始化 data 屬性的內容
1017
		$dataAttr="";
1018
 
1019
		#如果有設置 $conf["data"] 參數
1020
		if(isset($conf["data"])){
1021
 
1022
			#依據每個元素
1023
			foreach($conf["data"] as $name => $value){
1024
 
1025
				#串接 data 屬性
1026
				$dataAttr=$dataAttr."data-".$name."=\"".$value."\" ";
1027
 
1028
				}#foreach end
1029
 
1030
			}#foreach end
1031
 
1032
		#初始化 id
1033
		$id="";
1034
 
1035
		#如果有設置id
1036
		if(isset($conf["id"])){
1037
 
1038
			#設置id屬性
1039
			$id="id="."\"".$conf["id"]."\"";
1040
 
1041
			}#if end
1042
 
1043
		#要使用的style字串
1044
		$styleStr="";
1045
 
1046
		#如果有style樣式要設定
1047
		if(isset($conf["styleAttr"]) && isset($conf["styleVal"])){
1048
 
1049
			#如果style樣式設定有成對
1050
			if(count($conf["styleAttr"])>0 && count($conf["styleVal"])>0){
1051
 
1052
				#函式說明:
1053
				#建立給與html標籤使用的style屬性字串.
1054
				#回傳的結果:
1055
				#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
1056
				#$result["function"],當前執行的函數
1057
				#$result["error"],錯誤訊息陣列
1058
				#$result["content"],css設定內容
1059
				#必填的參數:
1060
				$conf["css::styleStr"]["styleName"]=$conf["styleAttr"];#為屬性名稱,須為陣列值
1061
				$conf["css::styleStr"]["styleValue"]=$conf["styleVal"];#為屬性值,須為陣列值
1062
				$styleStr=css::styleStr($conf["css::styleStr"]);
1063
				unset($conf["css::styleStr"]);
1064
 
1065
				#如果建立style設定失敗
1066
				if($styleStr["status"]==="false"){
1067
 
1068
					#設置執行不正常
1069
					$result["status"]="false";
1070
 
1071
					#設置錯誤訊息
1072
					$result["error"]=$styleStr;
1073
 
1074
					#回傳結果
1075
					return $result;
1076
 
1077
					}#if end
1078
 
1079
				#取得style字串
1080
				$styleStr=$styleStr["content"];
1081
 
1082
				}#if end
1083
 
1084
			}#if end
1085
 
1086
		#設置div起始標籤與class設定
1087
		$result["content"]="<span ".$styleStr." ".$conf["class"]." ".$conf["title"]." ".$dataAttr." ".$id.">";
1088
 
1089
		#$conf["contentArray"]有幾個元素就執行幾次迴圈
1090
		for($i=0;$i<count($conf["contentArray"]);$i++){
1091
 
1092
			#串連內容
1093
			$result["content"]=$result["content"].$conf["contentArray"][$i];
1094
 
1095
			}#for end
1096
 
1097
		#接上div的結束標籤
1098
		$result["content"]=$result["content"]."</span>";
1099
 
1100
		#設置執行正常
1101
		$result["status"]="true";
1102
 
1103
		#回傳結果
1104
		return $result;
1105
 
1106
		}#function spanSection end
1107
 
1108
	/*
1109
	#函式說明:
1110
	#<div>區塊,裡面可以指定css的class樣式,可以指定提示文字.
1111
	#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
1112
	#$result["functin"],字串,當前函數的名稱.
1113
	#$result["error"],陣列,錯訊訊息.
1114
	#$result["content"],字串,含有<div>標籤的內容.
1115
	#必填參數:
1116
	#$conf["contentArray"],字串陣列,要放入的內容陣列.
1117
	$conf["contentArray"]=array();
1118
	#可省略參數
1119
	#$conf["id"],字串,div區塊的id.
1120
	#$conf["id"]="";
1121
	#$conf["styleAttr"],字串陣列,給div區段要套用的style樣式屬性.
1122
	#$conf["styleAttr"]=array();
1123
	#$conf["styleVal"],字串陣列,給div區段要套用的style樣式數值.
1124
	#$conf["styleVal"]=array();
1125
	#$conf["class"],字串,div區段要套用的css樣式.
1126
	#$conf["class"]="";
1127
	#$conf["title"],陣列,滑鼠移到上面時要顯示的內容,每個元素代表一列內容.
1128
	#$conf["title"]=array();
1129
	#$conf["oneScreenSize"],字串,div區塊是否要占一個螢幕的大小,預設為"false"不設定,"true"為設定成一個螢幕的大小.
1130
	#$conf["oneScreenSize"]="false";
1131
	#$conf["textAlignCenter"],字串,div區塊是否要置中,預設為$conf["oneScreenSize"]的值,"false"為不置中,"true"代表要置中.
1132
	#$conf["textAlignCenter"]="";
1133
	#$conf["data"],字串陣列,每個要設置的屬性data內容,例如array("option1"=>"A","option2"=>"B"),預設不使用.
1134
	#$conf["data"]=array();
1135
	#參考資料:
1136
	#無.
1137
	#備註:
1138
	#無.
1139
	*/
1140
	public static function divSection(&$conf){
1141
 
1142
		#初始化要回傳的內容
1143
		$result=array();
1144
 
1145
		#設置當前執行的函數
1146
		$result["function"]=__FUNCTION__;
1147
 
1148
		#初始化css樣式內容
1149
		$result["css"]="";
1150
 
1151
		#如果 $conf 不為陣列
1152
		if(gettype($conf)!="array"){
1153
 
1154
			#設置執行失敗
1155
			$result["status"]="false";
1156
 
1157
			#設置執行錯誤訊息
1158
			$result["error"][]="\$conf變數須為陣列形態";
1159
 
1160
			#如果傳入的參數為 null
1161
			if($conf==null){
1162
 
1163
				#設置執行錯誤訊息
1164
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
1165
 
1166
				}#if end
1167
 
1168
			#回傳結果
1169
			return $result;
1170
 
1171
			}#if end
1172
 
1173
		#檢查參數
1174
		#函式說明:
1175
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
1176
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
1177
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
1178
		#$result["function"],當前執行的函式名稱.
1179
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
1180
		#$result[$shouldBtCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
1181
		#$result[$shouldBtCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
1182
		#$result[$shouldBtCheckedVarName]["error"],每個參數設定的錯誤訊息
1183
		#必填寫的參數:
1184
		#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
1185
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
1186
		#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
1187
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("contentArray");
1188
		#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列 例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double");
1189
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("array");
1190
		#$conf["variableCheck::checkArguments"]["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
1191
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
1192
		#可以省略的參數:
1193
		#$conf["canBeEmptyString"],必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true"。
1194
		#$conf["variableCheck::checkArguments"]["canBeEmptyString"]="true";
1195
		#$conf["skipableVariableName"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
1196
		$conf["variableCheck::checkArguments"]["skipableVariableName"]=array("id","styleAttr","styleVal","class","title","oneScreenSize","textAlignCenter","data");
1197
		#$conf["skipableVariableType"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
1198
		$conf["variableCheck::checkArguments"]["skipableVariableType"]=array("string","array","array","string","array","string","string","array");
1199
		#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null代表不指定,若預設值是必填參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
1200
		$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"]=array(null,array(),array(),"__qbpwcf_divFontCssStyle",null,"false",null,null);
1201
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
1202
		#$conf["arrayCountEqualCheck"][]=array();
1203
		$checkResult=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
1204
		unset($conf["variableCheck::checkArguments"]);
1205
 
1206
		#如果檢查失敗
1207
		if($checkResult["status"]=="false"){
1208
 
1209
			#設置執行不正常
1210
			$result["status"]="false";
1211
 
1212
			#設置錯誤訊息
1213
			$result["error"]=$checkResult;
1214
 
1215
			#回傳結果
1216
			return $result;
1217
 
1218
			}#if end
1219
 
1220
		#如果檢查不通過
1221
		if($checkResult["passed"]=="false"){
1222
 
1223
			#設置執行不正常
1224
			$result["status"]="false";
1225
 
1226
			#設置錯誤訊息
1227
			$result["error"]=$checkResult;
1228
 
1229
			#回傳結果
1230
			return $result;
1231
 
1232
			}#if end
1233
 
1234
		#如果沒有設定 $conf["textAlignCenter"]
1235
		if(!isset($conf["textAlignCenter"])){
1236
 
1237
			#設定預設值
1238
			$conf["textAlignCenter"]=$conf["oneScreenSize"];
1239
 
1240
			}#if end
1241
 
1242
		#如果 $conf["class"] 有設置
1243
		if(isset($conf["class"])){
1244
 
1245
			#套用css class設定
1246
			$conf["class"]=$conf["class"]=" class=\"".$conf["class"]."\" ";
1247
 
1248
			}#if end
1249
 
1250
		#反之
1251
		else{
1252
 
1253
			#設為 ""
1254
			$conf["class"]="";
1255
 
1256
			}#else end
1257
 
1258
		#如果 $conf["title"] 沒有設定
1259
		if(!isset($conf["title"])){
1260
 
1261
			#設置為 ""
1262
			$conf["title"]="";
1263
 
1264
			}#if end
1265
 
1266
		#反之 $conf["title"] 有設定
1267
		else{
1268
 
1269
			#套用title設定
1270
 
1271
			#另存 $conf["title"] 的內容
1272
			$tempTitleArray=$conf["title"];
1273
 
1274
			#初始化title設定
1275
			$conf["title"]=$conf["title"]=" title=\"";
1276
 
1277
			#$conf["title"]有幾個元素就執行幾次
1278
			for($i=0;$i<count($tempTitleArray);$i++){
1279
 
1280
				#串接提示內容
1281
				$conf["title"]=$conf["title"].$tempTitleArray[$i]."\r\n";
1282
 
1283
				}#for end
1284
 
1285
			#title設定的結束
1286
			$conf["title"]=$conf["title"]."\"";
1287
 
1288
			}#else end
1289
 
1290
		#如果有設定 $conf["id"]
1291
		if(isset($conf["id"])){
1292
 
1293
			#設置id字串
1294
			$conf["id"]="id=\"".$conf["id"]."\"";
1295
 
1296
			}#if end
1297
 
1298
		#反之
1299
		else{
1300
 
1301
			#設為空字串
1302
			$conf["id"]="";
1303
 
1304
			}#else end
1305
 
1306
		#初始化要設定的style字串
1307
		$styleStr="";
1308
 
1309
		#如果 $conf["oneScreenSize"] 為 "true"
1310
		if($conf["oneScreenSize"]==="true"){
1311
 
1312
			#初始化要設定的css樣式屬性
1313
			$cssAttr=array("height","line-height","width");
1314
 
1315
			#初始化要設定的css樣式屬性值
1316
			$cssVal=array("100vh","100vh","100vw");
1317
 
1318
			#如果 $conf["textAlignCenter"] 為 "true"
1319
			if($conf["textAlignCenter"]==="true"){
1320
 
1321
				#新增置中的屬性
1322
				$cssAttr[]="text-align";
1323
 
1324
				#新增置中的屬性值
1325
				$cssVal[]="center";
1326
 
1327
				}#if end
1328
 
1329
			#將要套用的樣式屬性放到設定參數裡面
1330
			$conf["styleAttr"]=$conf["styleAttr"]+$cssAttr;
1331
 
1332
			#將要套用的樣式數值放到設定參數裡面
1333
			$conf["styleVal"]=$conf["styleVal"]+$cssVal;
1334
 
1335
			}#if end
1336
 
1337
		#反之
1338
		else{
1339
 
1340
			#如果 $conf["textAlignCenter"] 為 "true"
1341
			if($conf["textAlignCenter"]==="true"){
1342
 
1343
				#新增置中的屬性
1344
				$conf["styleAttr"][]="text-align";
1345
 
1346
				#新增置中的屬性值
1347
				$conf["styleVal"][]="center";
1348
 
1349
				}#if end
1350
 
1351
			}#else end
1352
 
1353
		#如果有style樣式要設定
1354
		if(count($conf["styleAttr"])>0 && count($conf["styleVal"])>0){
1355
 
1356
			#函式說明:
1357
			#建立給與html標籤使用的style屬性字串.
1358
			#回傳的結果:
1359
			#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
1360
			#$result["function"],當前執行的函數
1361
			#$result["error"],錯誤訊息陣列
1362
			#$result["content"],css設定內容
1363
			#必填的參數:
1364
			$conf["css::styleStr"]["styleName"]=$conf["styleAttr"];#為屬性名稱,須為陣列值
1365
			$conf["css::styleStr"]["styleValue"]=$conf["styleVal"];#為屬性值,須為陣列值
1366
			$styleStr=css::styleStr($conf["css::styleStr"]);
1367
			unset($conf["css::styleStr"]);
1368
 
1369
			#如果建立style設定失敗
1370
			if($styleStr["status"]==="false"){
1371
 
1372
				#設置執行不正常
1373
				$result["status"]="false";
1374
 
1375
				#設置錯誤訊息
1376
				$result["error"]=$styleStr;
1377
 
1378
				#回傳結果
1379
				return $result;
1380
 
1381
				}#if end
1382
 
1383
			#取得style字串
1384
			$styleStr=$styleStr["content"];
1385
 
1386
			}#if end
1387
 
1388
		#初始化儲存data屬性的內容
1389
		$data="";
1390
 
1391
		#如果有設置 $conf["data"]
1392
		if(isset($conf["data"])){
1393
 
1394
			#針對每個屬性名稱與內容
1395
			foreach($conf["data"] as $name => $value){
1396
 
1397
				#串接data屬性的容
1398
				$data=$data." data-".$name."=\"".$value."\"";
1399
 
1400
				}#foreach endd
1401
 
1402
			}#if end
1403
 
1404
		#設置div起始標籤與class設定
1405
		$result["content"]="<div ".$styleStr." ".$conf["id"]." ".$conf["class"]." ".$conf["title"]." ".$data." >";
1406
 
1407
		#$conf["contentArray"]有幾個元素就執行幾次迴圈
1408
		for($i=0;$i<count($conf["contentArray"]);$i++){
1409
 
1410
			#如果要放置的元素存在
1411
			if(isset($conf["contentArray"][$i])){
1412
 
1413
				#如果是字串
1414
				if(gettype($conf["contentArray"][$i])==="string"){
1415
 
1416
					#串連內容
1417
					$result["content"]=$result["content"].$conf["contentArray"][$i];
1418
 
1419
					}#if end
1420
 
1421
				}#if end
1422
 
1423
			}#for end
1424
 
1425
		#接上div的結束標籤
1426
		$result["content"]=$result["content"]."</div>";
1427
 
1428
		#設置執行正常
1429
		$result["status"]="true";
1430
 
1431
		#回傳結果
1432
		return $result;
1433
 
1434
		}#function divSection end
1435
 
1436
	/*
1437
	#函式說明:
1438
	#設定背景的顏色
1439
	#須置於<head>與</head>之間
1440
	#回傳結果:
1441
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
1442
	#$reuslt["error"],執行不正常結束的錯訊息陣列.
1443
	#$result["function"],當前執行的函式名稱.
1444
	#$result["content"],爲設定背景顏色的css語法
1445
	#必填參數:
1446
	#$conf["color"],字串,爲背景顏色的參數 格式如 #FF13EA
1447
	$conf["color"]="";
1448
	#可省略參數:
1449
	#無.
1450
	#參考資料:
1451
	#無.
1452
	#備註:
1453
	#無.
1454
	*/
1455
	public static function color(&$conf){
1456
 
1457
		#初始化要回傳的變數
1458
		$result=array();
1459
 
1460
		#初始化要回傳的變數
1461
		$result["content"]="";
1462
 
1463
		#初始化當前執行的函數名稱
1464
		$result["funciton"]=__FUNCTION__;
1465
 
1466
		#如果 $conf 不為陣列
1467
		if(gettype($conf)!="array"){
1468
 
1469
			#設置執行失敗
1470
			$result["status"]="false";
1471
 
1472
			#設置執行錯誤訊息
1473
			$result["error"][]="\$conf變數須為陣列形態";
1474
 
1475
			#如果傳入的參數為 null
1476
			if($conf==null){
1477
 
1478
				#設置執行錯誤訊息
1479
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
1480
 
1481
				}#if end
1482
 
1483
			#回傳結果
1484
			return $result;
1485
 
1486
			}#if end
1487
 
1488
		#檢查參數
1489
		#函式說明:
1490
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
1491
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
1492
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
1493
		#$result["function"],當前執行的函式名稱.
1494
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
1495
		#$result[$shouldBtCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
1496
		#$result[$shouldBtCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
1497
		#$result[$shouldBtCheckedVarName]["error"],每個參數設定的錯誤訊息
1498
		#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
1499
		#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
1500
		#$result["notNeedVar"],字串陣列,多餘的參數名稱.
1501
		#必填寫的參數:
1502
		#$conf["variableCheck::checkArguments"]["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
1503
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
1504
		#$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
1505
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("color");
1506
		#$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列 例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double");
1507
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("string");
1508
		#$conf["variableCheck::checkArguments"]["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
1509
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
1510
		#可以省略的參數:
1511
		#$conf["variableCheck::checkArguments"]["canBeEmptyString"],必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true"。
1512
		$conf["variableCheck::checkArguments"]["canBeEmptyString"]="false";
1513
		#$conf["variableCheck::checkArguments"]["skipableVariableName"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
1514
		#$conf["variableCheck::checkArguments"]["skipableVariableName"]=array("ssl","serverIp","port");
1515
		#$conf["variableCheck::checkArguments"]["skipableVariableType"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
1516
		#$conf["variableCheck::checkArguments"]["skipableVariableType"]=array("string","string","string");
1517
		#$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是必填參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
1518
		#$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"]=array("true","127.0.0.1",null);
1519
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
1520
		#$conf["arrayCountEqualCheck"][]=array();
1521
		#參考資料來源:
1522
		#array_keys=>http://php.net/manual/en/function.array-keys.php
1523
		$checkResult=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
1524
		unset($conf["variableCheck::checkArguments"]);
1525
 
1526
		#如果檢查失敗
1527
		if($checkResult["status"]=="false"){
1528
 
1529
			#設置執行不正常
1530
			$result["status"]="false";
1531
 
1532
			#設置錯誤訊息
1533
			$result["error"]=$checkResult;
1534
 
1535
			#回傳結果
1536
			return $result;
1537
 
1538
			}#if end
1539
 
1540
		#如果檢查不通過
1541
		if($checkResult["passed"]=="false"){
1542
 
1543
			#設置執行不正常
1544
			$result["status"]="false";
1545
 
1546
			#設置錯誤訊息
1547
			$result["error"]=$checkResult;
1548
 
1549
			#回傳結果
1550
			return $result;
1551
 
1552
			}#if end
1553
 
1554
		#設定置中的css語法
1555
		$result["content"]=$result["content"]."<style>";
1556
		$result["content"]=$result["content"]."body";
1557
		$result["content"]=$result["content"]."{";
1558
		$result["content"]=$result["content"]."background-color:";
1559
		$result["content"]=$result["content"].$conf["color"];
1560
		$result["content"]=$result["content"].";";
1561
		$result["content"]=$result["content"]."}";
1562
		$result["content"]=$result["content"]."</style> ";
1563
 
1564
		#設置執行正常
1565
		$result["status"]="true";
1566
 
1567
		#回傳結果
1568
		return $result;
1569
 
1570
		}#function color end
1571
 
1572
	/*
1573
	#函式說明:
1574
	#使用圖片當作背景
1575
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
1576
	#$reuslt["error"],執行不正常結束的錯訊息陣列.
1577
	#$result["function"],當前執行的函式名稱.
1578
	#$result["content"],爲設定背景圖片的css樣式
1579
	#必填參數:
1580
	$conf["imgPosition"]="";#爲背景圖片的檔案位置,不可省略。
1581
	#可省略參數:
1582
	#$conf["repeatOrNot"]="false";#爲背景圖片是否要並排重複,可省略,預設是重複,若不要重複則給與"false"。
1583
	#$conf["size"]="unset";#爲背景圖片的大小,可省略,預設是"cover",代表全螢幕自動縮放,也可以用"?%"來設定,若不設定可用"unset".
1584
	#$conf["fixed"]="true";#爲背景在使用者滾動的時候是否要固定不動,可省略,預設是不固定不動,若要固定不動則給與"true"。
1585
	#$conf["rowsPosition"]="";#爲置於橫向的幾%,預設為"50%",可省略。
1586
	#$conf["colsPosition"]="";#爲置於直向的幾%,預設為"-50%",可省略。
1587
	#參考資料:
1588
	#無.
1589
	#備註:
1590
	#無.
1591
	*/
1592
	public static function backgroundImg(&$conf){
1593
 
1594
		#初始化要回傳的變數
1595
		$result=array();
1596
 
1597
		$result["content"]="";#爲設定背景圖片的css樣式
1598
 
1599
		#初始化當前執行的函數名稱
1600
		$result["funciton"]=__FUNCTION__;
1601
 
1602
		#如果 $conf 不為陣列
1603
		if(gettype($conf)!="array"){
1604
 
1605
			#設置執行失敗
1606
			$result["status"]="false";
1607
 
1608
			#設置執行錯誤訊息
1609
			$result["error"][]="\$conf變數須為陣列形態";
1610
 
1611
			#如果傳入的參數為 null
1612
			if($conf==null){
1613
 
1614
				#設置執行錯誤訊息
1615
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
1616
 
1617
				}#if end
1618
 
1619
			#回傳結果
1620
			return $result;
1621
 
1622
			}#if end
1623
 
1624
		#檢查參數
1625
		#函式說明:
1626
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
1627
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
1628
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
1629
		#$result["function"],當前執行的函式名稱.
1630
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
1631
		#$result[$shouldBtCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
1632
		#$result[$shouldBtCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
1633
		#$result[$shouldBtCheckedVarName]["error"],每個參數設定的錯誤訊息
1634
		#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
1635
		#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
1636
		#$result["notNeedVar"],字串陣列,多餘的參數名稱.
1637
		#必填寫的參數:
1638
		#$conf["variableCheck::checkArguments"]["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
1639
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
1640
		#$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
1641
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("imgPosition");
1642
		#$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列 例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double");
1643
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("string");
1644
		#$conf["variableCheck::checkArguments"]["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
1645
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
1646
		#可以省略的參數:
1647
		#$conf["variableCheck::checkArguments"]["canBeEmptyString"],必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true"。
1648
		$conf["variableCheck::checkArguments"]["canBeEmptyString"]="false";
1649
		#$conf["variableCheck::checkArguments"]["skipableVariableName"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
1650
		$conf["variableCheck::checkArguments"]["skipableVariableName"]=array("repeatOrNot","size","fixed","rowsPosition","colsPosition");
1651
		#$conf["variableCheck::checkArguments"]["skipableVariableType"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
1652
		$conf["variableCheck::checkArguments"]["skipableVariableType"]=array("string","string","string","string","string");
1653
		#$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是必填參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
1654
		$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"]=array("true","cover","false","50%","50%");
1655
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
1656
		#$conf["arrayCountEqualCheck"][]=array();
1657
		#參考資料來源:
1658
		#array_keys=>http://php.net/manual/en/function.array-keys.php
1659
		$checkResult=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
1660
		unset($conf["variableCheck::checkArguments"]);
1661
 
1662
		#如果檢查失敗
1663
		if($checkResult["status"]=="false"){
1664
 
1665
			#設置執行失敗
1666
			$result["status"]="false";
1667
 
1668
			#紀錄錯誤訊息
1669
			$result["error"]=$checkResult;
1670
 
1671
			#回傳結果
1672
			return $result;
1673
 
1674
			}#if end
1675
 
1676
		#如果檢查不通過
1677
		if($checkResult["passed"]=="false"){
1678
 
1679
			#設置執行失敗
1680
			$result["status"]="false";
1681
 
1682
			#紀錄錯誤訊息
1683
			$result["error"]=$checkResult;
1684
 
1685
			#回傳結果
1686
			return $result;
1687
 
1688
			}#if end
1689
 
1690
		#如果$conf["repeatOrNot"]參數爲空則圖片重複
1691
		if($conf["repeatOrNot"]=="true"){
1692
 
1693
			$conf["repeatOrNot"]="background-repeat:repeat;";
1694
 
1695
			}#if end
1696
 
1697
		#如果$conf["repeatOrNot"]參數爲"flase",則圖片不會重複。
1698
		if($conf["repeatOrNot"]=="false"){
1699
 
1700
			$conf["repeatOrNot"]="background-repeat:no-repeat;";
1701
 
1702
			}#if end
1703
 
1704
		#設定 body 的css樣式
1705
		$result["content"]=$result["content"]."<style>";
1706
		$result["content"]=$result["content"]."body";
1707
		$result["content"]=$result["content"]."{";
1708
		$result["content"]=$result["content"]."background:url(\"".$conf["imgPosition"]."\"); ".$conf["repeatOrNot"];
1709
 
1710
		#如果$conf["fixed"]存在且爲true則印出以下內容
1711
		if($conf["fixed"]=="true"){
1712
 
1713
			$result["content"]=$result["content"]." background-attachment:fixed;";
1714
 
1715
			}#if end
1716
 
1717
		#如果$size有設定則印出以下這行
1718
		if(isset($conf["size"])){
1719
 
1720
			$result["content"]=$result["content"]."background-size:".$conf["size"].";";
1721
 
1722
			}#if end
1723
 
1724
		#設定背景圖片的位置
1725
		$result["content"]=$result["content"]."background-position: ".$conf["rowsPosition"]." ".$conf["colsPosition"].";";
1726
 
1727
		#body設定結束
1728
		$result["content"]=$result["content"]."}";
1729
 
1730
		#style結束
1731
		$result["content"]=$result["content"]."</style> ";
1732
 
1733
		#設置執行成功
1734
		$result["status"]="true";
1735
 
1736
		#回傳結果
1737
		return $result;
1738
 
1739
		}#函式結束
1740
 
1741
	/*
1742
	#函式說明:
1743
	#回傳結果:
1744
	#$result,爲設定置中的css樣式
1745
	#必填參數:
1746
	#無.
1747
	#可省略參數:
1748
	#無.
1749
	#參考資料:
1750
	#無.
1751
	#備註:
1752
	#將本文內容置中的樣式。之後只要是介於<body>與</body>之間的內容都會置中。
1753
	*/
1754
	public static function centerBody(){
1755
 
1756
		#初始化要回傳的結果
1757
		$result="";
1758
 
1759
		#css 語法開始
1760
		$result=$result."<style type=\"text/css\">";
1761
 
1762
		#body style start
1763
		$result=$result."body{";
1764
 
1765
			#css 置中的語法
1766
			$result=$result."text-align:center;";
1767
 
1768
			$result=$result."}";#body style end
1769
 
1770
		#css 語法結束
1771
		$result=$result."</style> ";
1772
 
1773
		#回傳結果
1774
		return $result;
1775
 
1776
		}#function centerBody end
1777
 
1778
	/*
1779
	#函式說明:
1780
	#製作針對 css class 的動畫,請套用在div上,才會有效果
1781
	#回傳結果:
1782
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
1783
	#$result["content"],css動畫設定的語法
1784
	#$result["function"],當前執行的函數
1785
	#$result["error"],涵式錯誤訊息陣列
1786
	#$result["warning"],警告訊息陣列
1787
	#必填參數:
1788
	#$conf["name"],字串,css動畫的名稱.
1789
	$conf["name"]="";
1790
	#$conf["durationTime"],字串,整個動畫需要幾秒完成,例如"5s".
1791
	$conf["durationTime"]="";
1792
	#$conf["iteration"],字串,整個動畫要重複幾次,"infinite"代表不斷地重複,"0"代表不重複執行.
1793
	$conf["iteration"]="";
1794
	#$conf["direction"],字串,動畫要怎麼樣重複,"alternate"代表來回執行,"normal"代表正常執行.
1795
	$conf["direction"]="";
1796
	#$conf["delay"],字串,動畫要延遲幾秒開始,例如"0s".
1797
	$conf["delay"]="0s";
1798
	#$conf["speedMode"],字串,動畫執行過程的速度要用什麼模式來執行,"linear"代表等速,"ease"代表起始跟結尾是靜止的,中間是最快的.
1799
	$conf["speedMode"]="linear";
1800
	#可省略參數:
1801
	#$conf["keyFrameStartPoint"],字串陣列,各個動畫單位開始的時間百分比,"0%"與"from"代表一開始,"100%"與"to"代表時間結束.
1802
	#$conf["keyFrameStartPoint"]=array("");
1803
	#$conf["keyFrameCssMoveAttribute"],二維字串陣列,各個動畫影格子的與動畫相關的css屬性.
1804
	#$conf["keyFrameCssMoveAttribute"][]=array();
1805
	#$conf["keyFrameCssMoveValue"],二維字串陣列,各個動畫影格子的與動畫相關的css屬性.
1806
	#$conf["keyFrameCssMoveValue"][]=array();
1807
	#$conf["keyFrameCssAttribute"],二維字串陣列,各個動畫影格子的一般非動畫的css屬性.
1808
	#$conf["keyFrameCssAttribute"][]=array();
1809
	#$conf["keyFrameCssValue"],二維字串陣列,各個動畫格子的css屬性數值.
1810
	#$conf["keyFrameCssValue"][]=array();
1811
	#參考資料:
1812
	#css動畫,http://blogger.gtwang.org/2013/12/using-css3-animation.html
1813
	#w3c的animation-keyframes,http://www.w3schools.com/cssref/css3_pr_animation-keyframes.asp
1814
	#備註:
1815
	#無.
1816
	*/
1817
	public static function animation(&$conf){
1818
 
1819
		#初始化要回傳的結果
1820
		$result=array();
1821
 
1822
		#初始化語法
1823
		$result["content"]="";
1824
 
1825
		#如果 $conf 不是陣列
1826
		if(gettype($conf)!="array"){
1827
 
1828
			#設置執行失敗
1829
			$result["status"]="false";
1830
 
1831
			#設置執行錯誤
1832
			$result["error"][]="\$conf變數須為陣列形態";
1833
 
1834
			#如果傳入的參數為 null
1835
			if($conf==null){
1836
 
1837
				#設置執行錯誤訊息
1838
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
1839
 
1840
				}#if end
1841
 
1842
			#回傳結果
1843
			return $result;
1844
 
1845
			}#if end
1846
 
1847
		#檢查參數
1848
		#函式說明:
1849
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
1850
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
1851
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
1852
		#$result["function"],當前執行的函式名稱.
1853
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
1854
		#$result[$shouldBtCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
1855
		#$result[$shouldBtCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
1856
		#$result[$shouldBtCheckedVarName]["error"],每個參數設定的錯誤訊息
1857
		#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
1858
		#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
1859
		#$result["notNeedVar"],字串陣列,多餘的參數名稱.
1860
		#必填寫的參數:
1861
		#$conf["variableCheck::checkArguments"]["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
1862
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
1863
		#$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
1864
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("name","durationTime","iteration","direction","delay","speedMode");
1865
		#$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列 例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double");
1866
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("string","string","string","string","string","string");
1867
		#$conf["variableCheck::checkArguments"]["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
1868
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
1869
		#可以省略的參數:
1870
		#$conf["variableCheck::checkArguments"]["canBeEmptyString"],必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true"。
1871
		$conf["variableCheck::checkArguments"]["canBeEmptyString"]="false";
1872
		#$conf["variableCheck::checkArguments"]["skipableVariableName"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
1873
		$conf["variableCheck::checkArguments"]["skipableVariableName"]=array("keyFrameStartPoint","keyFrameCssMoveAttribute","keyFrameCssMoveValue","keyFrameCssAttribute","keyFrameCssValue");
1874
		#$conf["variableCheck::checkArguments"]["skipableVariableType"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
1875
		$conf["variableCheck::checkArguments"]["skipableVariableType"]=array("array","array","array","array","array");
1876
		#$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是必填參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
1877
		$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"]=array(null,null,null,null,null);
1878
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
1879
		$conf["variableCheck::checkArguments"]["arrayCountEqualCheck"][]=array("keyFrameStartPoint","keyFrameCssAttribute","keyFrameCssValue");
1880
		$conf["variableCheck::checkArguments"]["arrayCountEqualCheck"][]=array("keyFrameStartPoint","keyFrameCssMoveAttribute","keyFrameCssMoveValue");
1881
		#參考資料來源:
1882
		#array_keys=>http://php.net/manual/en/function.array-keys.php
1883
		$checkResult=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
1884
		unset($conf["variableCheck::checkArguments"]);
1885
 
1886
		#如果檢查失敗
1887
		if($checkResult["status"]=="false"){
1888
 
1889
			#設置執行不正常
1890
			$result["status"]="false";
1891
 
1892
			#設置錯誤訊息
1893
			$result["error"]=$checkResult;
1894
 
1895
			#回傳結果
1896
			return $result;
1897
 
1898
			}#if end
1899
 
1900
		#如果檢查不通過
1901
		if($checkResult["passed"]=="false"){
1902
 
1903
			#設置執行不正常
1904
			$result["status"]="false";
1905
 
1906
			#設置錯誤訊息
1907
			$result["error"]=$checkResult;
1908
 
1909
			#回傳結果
1910
			return $result;
1911
 
1912
			}#if end
1913
 
1914
		#函式說明:
1915
		#創建 css 樣式
1916
		#回傳的結果:
1917
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
1918
		#$result["css"],css設定內容
1919
		#$result["function"],當前執行的函數
1920
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
1921
		#必填的參數:
1922
		$conf["css::createCssStyle"]["cssStyleName"]=$conf["name"];#為該 css 樣式的名稱,不能以數字開頭。
1923
		$conf["css::createCssStyle"]["attributes"]=array(
1924
			"animation-name",
1925
			"-webkit-animation-name",
1926
			"-moz-animation-name",
1927
			"-o-animation-name",
1928
			"animation-duration",
1929
			"-webkit-animation-duration",
1930
			"-moz-animation-duration",
1931
			"-o-animation-duration",
1932
			"animation-iteration-count",
1933
			"animation-iteration-count",
1934
			"-moz-animation-iteration-count",
1935
			"-o-animation-iteration-count",
1936
			"animation-direction",
1937
			"-webkit-animation-direction",
1938
			"-moz-animation-direction",
1939
			"-o-animation-direction",
1940
			"animation-delay",
1941
			"-webkit-animation-delay",
1942
			"-moz-animation-delay",
1943
			"-o-animation-delay",
1944
			"animation-timing-function",
1945
			"-webkit-animation-timing-function",
1946
			"-moz-animation-timing-function",
1947
			"-o-animation-timing-function"
1948
			);#為屬性名稱,須為陣列值
1949
		$conf["css::createCssStyle"]["content"]=array(
1950
			$conf["name"],
1951
			$conf["name"],
1952
			$conf["name"],
1953
			$conf["name"],
1954
			$conf["durationTime"],
1955
			$conf["durationTime"],
1956
			$conf["durationTime"],
1957
			$conf["durationTime"],
1958
			$conf["iteration"],
1959
			$conf["iteration"],
1960
			$conf["iteration"],
1961
			$conf["iteration"],
1962
			$conf["direction"],
1963
			$conf["direction"],
1964
			$conf["direction"],
1965
			$conf["direction"],
1966
			$conf["delay"],
1967
			$conf["delay"],
1968
			$conf["delay"],
1969
			$conf["delay"],
1970
			$conf["speedMode"],
1971
			$conf["speedMode"],
1972
			$conf["speedMode"],
1973
			$conf["speedMode"]
1974
			);#為屬性值,須為陣列值
1975
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
1976
		unset($conf["css::createCssStyle"]);
1977
 
1978
		#如果初始化 css 動畫失敗
1979
		if($createCssStyle["status"]=="false"){
1980
 
1981
			#設置執行不正常
1982
			$result["status"]="false";
1983
 
1984
			#設置錯誤訊息
1985
			$result["error"]=$createCssStyle;
1986
 
1987
			#回傳結果
1988
			return $result;
1989
 
1990
			}#if end
1991
 
1992
		#串接css語法
1993
		$result["content"]=$result["content"].$createCssStyle["content"];
1994
 
1995
		#動畫影格的css語法開始
1996
		$result["content"]=$result["content"]."<style type=\"text/css\">";
1997
 
1998
		#儲存名瀏覽器的 @keyframes 識別
1999
		$keyFrames[]="@keyframes";
2000
		$keyFrames[]="@-moz-keyframes";
2001
		$keyFrames[]="@-webkit-keyframes";
2002
		$keyFrames[]="@-o-keyframes";
2003
 
2004
		#初始化動畫css樣式於通用瀏覽器到個別瀏覽器的前置字串
2005
		$moveAttribute[]="";
2006
		$moveAttribute[]="-moz-";
2007
		$moveAttribute[]="-webkit-";
2008
		$moveAttribute[]="-o-";
2009
 
2010
		#有幾款瀏覽器識別就執行幾次
2011
		for($i=0;$i<count($keyFrames);$i++){
2012
 
2013
			#串接動畫影格的css語法
2014
			$result["content"]=$result["content"].$keyFrames[$i]." ".$conf["name"]." {";
2015
 
2016
			#如果 $conf["keyFrameStartPoint"] 存在
2017
			if(isset($conf["keyFrameStartPoint"])){
2018
 
2019
				#有幾個 $conf["keyFrameStartPoint"] 就執行幾次
2020
				for($j=0;$j<count($conf["keyFrameStartPoint"]);$j++){
2021
 
2022
					#如果 $conf["keyFrameStartPoint"][$j] 不存在
2023
					if(!isset($conf["keyFrameStartPoint"][$j])){
2024
 
2025
						#設置執行失敗
2026
						$result["status"]="false";
2027
 
2028
						#設置錯誤訊息
2029
						$result["error"][]="參數 keyFrameStartPoint 陣列的key必須為從0開始的整數";
2030
 
2031
						#回傳結果
2032
						return $result;
2033
 
2034
						}#if end
2035
 
2036
					#串接每個影格的時間比例
2037
					$result["content"]=$result["content"].$conf["keyFrameStartPoint"][$j]."{";
2038
 
2039
					#如果 $conf["keyFrameCssAttribute"][$j] 或 $conf["keyFrameCssValue"][$j] 不存在
2040
					if(!isset($conf["keyFrameCssAttribute"][$j]) || !isset($conf["keyFrameCssValue"][$j])){
2041
 
2042
						#設置執行失敗
2043
						$result["status"]="false";
2044
 
2045
						#設置錯誤訊息
2046
						$result["error"][]="參數 keyFrameCssAttribute 與 keyFrameCssValue 須為二維陣列,且其key應從0開始排列";
2047
 
2048
						#回傳結果
2049
						return $result;
2050
 
2051
						}#if end
2052
 
2053
					#如果 $conf["keyFrameCssAttribute"][$j] 或 $conf["keyFrameCssValue"][$j] 不為 "array" 形態
2054
					if(gettype($conf["keyFrameCssAttribute"][$j])!="array" || gettype($conf["keyFrameCssValue"][$j])!="array"){
2055
 
2056
						#設置執行失敗
2057
						$result["status"]="false";
2058
 
2059
						#設置錯誤訊息
2060
						$result["error"][]="參數 keyFrameCssAttribute 與 keyFrameCssValue 須為二維陣列,且其key應從0開始排列";
2061
 
2062
						#回傳結果
2063
						return $result;
2064
 
2065
						}#if end
2066
 
2067
					#如果 $conf["keyFrameCssAttribute"][$j] 或 $conf["keyFrameCssValue"][$j] 的元素數量不一樣多
2068
					if(count($conf["keyFrameCssAttribute"][$j])!=count($conf["keyFrameCssValue"][$j])){
2069
 
2070
						#設置執行失敗
2071
						$result["status"]="false";
2072
 
2073
						#設置錯誤訊息
2074
						$result["error"][]="參數 keyFrameCssAttribute 與 keyFrameCssValue 的元素數量須為一樣";
2075
 
2076
						#回傳結果
2077
						return $result;
2078
 
2079
						}#if end
2080
 
2081
					#如果 $conf["keyFrameCssMoveAttribute"] 與 $conf["keyFrameCssMoveValue"] 皆存在
2082
					if(isset($conf["keyFrameCssMoveAttribute"]) && isset($conf["keyFrameCssMoveValue"])){
2083
 
2084
						#$conf["keyFrameCssMoveAttribute"][$j] 有幾個元素就執行幾次
2085
						for($k=0;$k<count($conf["keyFrameCssMoveAttribute"][$j]);$k++){
2086
 
2087
							#串連該動畫影格的樣式
2088
							$result["content"]=$result["content"].$moveAttribute[$i].$conf["keyFrameCssMoveAttribute"][$j][$k].":".$conf["keyFrameCssMoveValue"][$j][$k].";";
2089
 
2090
							}#for end
2091
 
2092
						}#if end
2093
 
2094
					#如果 $conf["keyFrameCssAttribute"] 與 $conf["keyFrameCssValue"] 皆存在
2095
					if(isset($conf["keyFrameCssAttribute"]) && isset($conf["keyFrameCssValue"])){
2096
 
2097
						#$conf["keyFrameCssAttribute"][$j] 有幾個元素就執行幾次
2098
						for($k=0;$k<count($conf["keyFrameCssAttribute"][$j]);$k++){
2099
 
2100
							#串連該動畫影格的樣式
2101
							$result["content"]=$result["content"].$conf["keyFrameCssAttribute"][$j][$k].":".$conf["keyFrameCssValue"][$j][$k].";";
2102
 
2103
							}#for end
2104
 
2105
						}#if end
2106
 
2107
					#串接每個影格的設定結束
2108
					$result["content"]=$result["content"]."}";
2109
 
2110
					}#for end
2111
 
2112
				}#if end
2113
 
2114
			#反之 $conf["keyFrameStartPoint"] 不存在
2115
			else{
2116
 
2117
				#設置警告訊息
2118
				$result["warning"][]="參數 keyFrameStartPoint 未設置";
2119
 
2120
				}#else end
2121
 
2122
			}#for end
2123
 
2124
		#動畫影格的css語法結束
2125
		$result["content"]=$result["content"]."</style>";
2126
 
2127
		#設置執行正常
2128
		$result["status"]="true";
2129
 
2130
		#回傳結果
2131
		return $result;
2132
 
2133
		}#function animation end
2134
 
2135
	/*
2136
	#函式說明:
2137
	#css語法開始
2138
	#回傳結果:
2139
	#$result,css語法開始的標籤.
2140
	#必填參數:
2141
	#無.
2142
	#可省略參數:
2143
	#無.
2144
	#參考資料:
2145
	#無.
2146
	#備註:
2147
	#無.
2148
	*/
2149
	public static function start(){
2150
 
2151
		#回傳css語法開始的標籤
2152
		return "<style type=\"text/css\">";
2153
 
2154
		}#function start end
2155
 
2156
	/*
2157
	#函式說明:
2158
	#css語法結束
2159
	#回傳結果:
2160
	#$result,css語法結束的標籤.
2161
	#必填參數:
2162
	#無.
2163
	#可省略參數:
2164
	#無.
2165
	#參考資料:
2166
	#無.
2167
	#備註:
2168
	#無.
2169
	*/
2170
	public static function end(){
2171
 
2172
		#回傳css語法開始的標籤
2173
		return "</style>";
2174
 
2175
		}#function end end
2176
 
2177
	/*
2178
	#函式說明:
2179
	#跑馬燈
2180
	#回傳結果:
2181
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2182
	#$result["content"],css動畫設定的語法.
2183
	#$result["function"],當前執行的函數.
2184
	#$result["error"],涵式錯誤訊息陣列.
2185
	#必填參數:
2186
	#$conf["object"],字串,要作為跑馬燈的物件.
2187
	$conf["object"]="";
2188
	#$conf["animeName"],字串,動畫名稱.
2189
	$conf["animeName"]="";
2190
	#可省略參數:
2191
	#$conf["durationTime"],字串,動畫的執行時間長度,預設是"5s"代表5秒.
2192
	#$conf["durationTime"]="5s";
2193
	$conf["direction"]="";
2194
	#$conf["delay"],字串,動畫要延遲幾秒開始,預設為"0s".
2195
	#$conf["delay"]="0s";
2196
	#$conf["speedMode"],字串,動畫執行過程的速度要用什麼模式來執行,"linear"代表等速,"ease"代表起始跟結尾是靜止的,中間是最快的,預設為"linear"
2197
	#$conf["speedMode"]="linear";
2198
	#$conf["keyFrameStartPoint"],字串陣列,動畫開始的時間點百分比,,"0%"與"from"代表一開始,"100%"與"to"代表時間結束,預設為array("0%","100%").
2199
	#$conf["keyFrameStartPoint"]=array("0%","100%");
2200
	#$conf["keyFrameCssMoveAttribute"],二維字串陣列,各個動畫影格子的與動畫相關的css屬性,預設為 array(array("transform"),array("transform")).
2201
	#$conf["keyFrameCssMoveAttribute"][]=array("transform");
2202
	#$conf["keyFrameCssMoveAttribute"][]=array("transform");
2203
	#$conf["keyFrameCssMoveValue"],二維字串陣列,各個動畫影格子的與動畫相關的css屬性,預設為 array(array("0%"),array("100%")).
2204
	#$conf["keyFrameCssMoveValue"][]=array("0%");
2205
	#$conf["keyFrameCssMoveValue"][]=array("100%");
2206
	#$conf["styleAttribute"],二維陣列,從動畫開始到結束所要用要使用的css樣式屬性名稱,$conf["styleAttribute"]至少要有兩個一維陣列,預設為array(array("transform","color","font-size"),array("transform","color","font-size")).
2207
	#$conf["styleAttribute"]=array(array("color","font-size"),array("color","font-size"));
2208
	#$conf["styleValue"],二維陣列,從動畫開始到結束所要使用的css樣式屬性所對應的數值,$conf["styleValue"]至少要有兩個一維陣列,預設為array(array("0%","#FF0000","30px"),array("100%","#00FF00","30px")).
2209
	#$conf["styleValue"]=array(array("#FF0000","30px"),array("#00FF00","30px"));
2210
	#$conf["backgroundColor"]="";字串,背景顏色,預設為"#DDDDDD".
2211
	#$conf["backgroundColor"]="#DDDDDD";
2212
	#參考資料:
2213
	#跑馬燈範例=>http://www.quackit.com/html/codes/html_marquee_code.cfm
2214
	#跑馬燈的影格css屬性沒有跟特定瀏覽器的影格一致,多了其他瀏覽器用的屬性.
2215
	#備註:
2216
	#無.
2217
	*/
2218
	public static function marquee(&$conf){
2219
 
2220
		#初始化要回傳的結果
2221
		$result=array();
2222
 
2223
		#初始化語法
2224
		$result["content"]="";
2225
 
2226
		#如果 $conf 不是陣列
2227
		if(gettype($conf)!="array"){
2228
 
2229
			#設置執行失敗
2230
			$result["status"]="false";
2231
 
2232
			#設置執行錯誤
2233
			$result["error"][]="\$conf變數須為陣列形態";
2234
 
2235
			#如果傳入的參數為 null
2236
			if($conf==null){
2237
 
2238
				#設置執行錯誤訊息
2239
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
2240
 
2241
				}#if end
2242
 
2243
			#回傳結果
2244
			return $result;
2245
 
2246
			}#if end
2247
 
2248
		#檢查參數
2249
		#函式說明:
2250
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
2251
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2252
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
2253
		#$result["function"],當前執行的函式名稱.
2254
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
2255
		#$result[$shouldBtCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
2256
		#$result[$shouldBtCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
2257
		#$result[$shouldBtCheckedVarName]["error"],每個參數設定的錯誤訊息
2258
		#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
2259
		#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
2260
		#$result["notNeedVar"],字串陣列,多餘的參數名稱.
2261
		#必填寫的參數:
2262
		#$conf["variableCheck::checkArguments"]["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
2263
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
2264
		#$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
2265
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("object","animeName");
2266
		#$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列 例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double");
2267
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("string","string");
2268
		#$conf["variableCheck::checkArguments"]["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
2269
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
2270
		#可以省略的參數:
2271
		#$conf["variableCheck::checkArguments"]["canBeEmptyString"],必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true"。
2272
		$conf["variableCheck::checkArguments"]["canBeEmptyString"]="false";
2273
		#$conf["variableCheck::checkArguments"]["skipableVariableName"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
2274
		$conf["variableCheck::checkArguments"]["skipableVariableName"]=array("durationTime","keyFrameStartPoint","keyFrameCssMoveAttribute","keyFrameCssMoveValue","styleAttribute","styleValue","backgroundColor","delay","speedMode");
2275
		#$conf["variableCheck::checkArguments"]["skipableVariableType"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
2276
		$conf["variableCheck::checkArguments"]["skipableVariableType"]=array("string","array","array","array","array","array","string","string","string");
2277
		#$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是必填參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
2278
		$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"]=array(
2279
			"10s",
2280
			array("0%","100%"),
2281
			array(array("transform"),array("transform")),
2282
			array(array("translateX(0%)"),array("translateX(100%)")),
2283
			array(array("color","font-size"),array("color","font-size")),
2284
			array(array("#FF0000","30px"),array("#00FF00","30px")),
2285
			"#DDDDDD",
2286
			"0s",
2287
			"linear"
2288
			);
2289
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
2290
		$conf["variableCheck::checkArguments"]["arrayCountEqualCheck"][]=array("keyFrameStartPoint","styleAttribute","styleValue");
2291
		#參考資料來源:
2292
		#array_keys=>http://php.net/manual/en/function.array-keys.php
2293
		$checkResult=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
2294
		unset($conf["variableCheck::checkArguments"]);
2295
 
2296
		#如果檢查失敗
2297
		if($checkResult["status"]=="false"){
2298
 
2299
			#設置執行不正常
2300
			$result["status"]="false";
2301
 
2302
			#設置錯誤訊息
2303
			$result["error"]=$checkResult;
2304
 
2305
			#回傳結果
2306
			return $result;
2307
 
2308
			}#if end
2309
 
2310
		#如果檢查不通過
2311
		if($checkResult["passed"]=="false"){
2312
 
2313
			#設置執行不正常
2314
			$result["status"]="false";
2315
 
2316
			#設置錯誤訊息
2317
			$result["error"]=$checkResult;
2318
 
2319
			#回傳結果
2320
			return $result;
2321
 
2322
			}#if end
2323
 
2324
		#函式說明:
2325
		#製作針對 css class 的動畫.
2326
		#回傳結果:
2327
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2328
		#$result["content"],css動畫設定的語法
2329
		#$result["function"],當前執行的函數
2330
		#$result["error"],涵式錯誤訊息陣列
2331
		#$result["warning"],警告訊息陣列
2332
		#必填參數:
2333
		#$conf["css::animation"]["name"],字串,css動畫的名稱.
2334
		$conf["css::animation"]["name"]=$conf["animeName"];
2335
		#$conf["css::animation"]["durationTime"],字串,整個動畫需要幾秒完成,ex:"5s".
2336
		$conf["css::animation"]["durationTime"]=$conf["durationTime"];
2337
		#$conf["css::animation"]["iteration"],字串,整個動畫要重複幾次,"infinite"代表不斷地重複,"0"代表不重複執行.
2338
		$conf["css::animation"]["iteration"]="infinite";
2339
		#$conf["css::animation"]["direction"],字串,動畫要怎麼樣重複,"alternate"代表來回執行,"","";
2340
		$conf["css::animation"]["direction"]="alternate";
2341
		#$conf["css::animation"]["delay"],字串,動畫要延遲幾秒開始,例如"0s".
2342
		$conf["css::animation"]["delay"]=$conf["delay"];
2343
		#$conf["css::animation"]["speedMode"],字串,動畫執行過程的速度要用什麼模式來執行,"linear"代表等速,"ease"代表起始跟結尾是靜止的,中間是最快的.
2344
		$conf["css::animation"]["speedMode"]=$conf["speedMode"];
2345
		#可省略參數:
2346
		#$conf["keyFrameStartPoint"],字串陣列,各個動畫單位開始的時間百分比,"0%"與"from"代表一開始,"100%"與"to"代表時間結束.
2347
		$conf["css::animation"]["keyFrameStartPoint"]=$conf["keyFrameStartPoint"];
2348
		#$conf["keyFrameCssMoveAttribute"],二維字串陣列,各個動畫影格子的與動畫相關的css屬性.
2349
		$conf["css::animation"]["keyFrameCssMoveAttribute"]=$conf["keyFrameCssMoveAttribute"];
2350
		#$conf["keyFrameCssMoveValue"],二維字串陣列,各個動畫影格子的與動畫相關的css屬性.
2351
		$conf["css::animation"]["keyFrameCssMoveValue"]=$conf["keyFrameCssMoveValue"];
2352
		#$conf["keyFrameCssAttribute"],二維字串陣列,各個動畫影格子的css屬性.
2353
		$conf["css::animation"]["keyFrameCssAttribute"]=$conf["styleAttribute"];
2354
		#$conf["keyFrameCssValue"],二維字串陣列,各個動畫格子的css屬性數值.
2355
		$conf["css::animation"]["keyFrameCssValue"]=$conf["styleValue"];
2356
		#參考資料:
2357
		#css動畫,http://blogger.gtwang.org/2013/12/using-css3-animation.html
2358
		#w3c的animation-keyframes,http://www.w3schools.com/cssref/css3_pr_animation-keyframes.asp
2359
		$animation=css::animation($conf["css::animation"]);
2360
		unset($conf["css::animation"]);
2361
 
2362
		#如果css動畫的建立失敗
2363
		if($animation["status"]=="false"){
2364
 
2365
			#設置執行失敗
2366
			$result["status"]="false";
2367
 
2368
			#設置執行錯誤
2369
			$result["error"]=$animation;
2370
 
2371
			#回傳結果
2372
			return $result;
2373
 
2374
			}#if end
2375
 
2376
		#串接css動畫的語法
2377
		$result["content"]=$result["content"].$animation["content"];
2378
 
2379
		#函式說明:
2380
		#<div>區塊,裡面可以指定css的class樣式,可以指定提示文字.
2381
		#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
2382
		#$result["functin"],字串,當前函數的名稱.
2383
		#$result["error"],陣列,錯訊訊息.
2384
		#$result["content"],字串,含有<div>標籤的內容.
2385
		#必填參數:
2386
		#$conf["css::spanSection"]["contentArray"],字串陣列,要放入的內容陣列.
2387
		$conf["css::spanSection"]["contentArray"]=array($conf["object"]);
2388
		#可省略參數
2389
		#$conf["css::spanSection"]["class"],字串,div區段要套用的css樣式.
2390
		$conf["css::spanSection"]["class"]=$conf["animeName"];
2391
		#$conf["title"],陣列,滑鼠移到上面時要顯示的內容,每個元素代表一列內容
2392
		#$conf["title"]=array();
2393
		$spanSection=css::divSection($conf["css::spanSection"]);
2394
		unset($conf["css::spanSection"]);
2395
 
2396
		#如果建立跑馬燈區塊失敗
2397
		if($spanSection["status"]=="false"){
2398
 
2399
			#設置執行失敗
2400
			$result["status"]="false";
2401
 
2402
			#設置執行錯誤
2403
			$result["error"]=$spanSection;
2404
 
2405
			#回傳結果
2406
			return $result;
2407
 
2408
			}#if end
2409
 
2410
		#測試用的顏色
2411
		#$conf["backgroundColor"]="#99FF00";
2412
 
2413
		#函式說明:
2414
		#創建 css 樣式
2415
		#回傳的結果:
2416
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2417
		#$result["css"],css設定內容
2418
		#$result["function"],當前執行的函數
2419
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
2420
		#必填的參數:
2421
		$conf["css::createCssStyle"]["cssStyleName"]=$conf["animeName"]."-backgroundColor";#為該 css 樣式的名稱,不能以數字開頭。
2422
		$conf["css::createCssStyle"]["attributes"]=array("background");#為屬性名稱,須為陣列值
2423
		$conf["css::createCssStyle"]["content"]=array($conf["backgroundColor"]);#為屬性值,須為陣列值
2424
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
2425
		unset($conf["css::createCssStyle"]);
2426
 
2427
		#如果建立跑馬燈背景的css語法失敗
2428
		if($createCssStyle["status"]=="false"){
2429
 
2430
			#設置執行失敗
2431
			$result["status"]="false";
2432
 
2433
			#設置執行錯誤
2434
			$result["error"]=$createCssStyle;
2435
 
2436
			#回傳結果
2437
			return $result;
2438
 
2439
			}#if end
2440
 
2441
		#串接css語法
2442
		$result["content"]=$result["content"].$createCssStyle["css"];
2443
 
2444
		#函式說明:
2445
		#<div>區塊,裡面可以指定css的class樣式,可以指定提示文字.
2446
		#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
2447
		#$result["functin"],字串,當前函數的名稱.
2448
		#$result["error"],陣列,錯訊訊息.
2449
		#$result["content"],字串,含有<div>標籤的內容.
2450
		#必填參數:
2451
		#$conf["css::spanSection"]["contentArray"],字串陣列,要放入的內容陣列.
2452
		$conf["css::spanSection"]["contentArray"]=array($spanSection["content"]);
2453
		#可省略參數
2454
		#$conf["css::spanSection"]["class"],字串,div區段要套用的css樣式.
2455
		$conf["css::spanSection"]["class"]=$conf["animeName"]."-backgroundColor";
2456
		#$conf["title"],陣列,滑鼠移到上面時要顯示的內容,每個元素代表一列內容
2457
		#$conf["title"]=array();
2458
		$divSection=css::divSection($conf["css::spanSection"]);
2459
		unset($conf["css::spanSection"]);
2460
 
2461
		#如果建立跑馬燈區塊失敗
2462
		if($spanSection["status"]=="false"){
2463
 
2464
			#設置執行失敗
2465
			$result["status"]="false";
2466
 
2467
			#設置執行錯誤
2468
			$result["error"]=$divSection;
2469
 
2470
			#回傳結果
2471
			return $result;
2472
 
2473
			}#if end
2474
 
2475
		#串接div區塊的語法
2476
		$result["content"]=$result["content"].$divSection["content"];
2477
 
2478
		#設置執行正常
2479
		$result["status"]="true";
2480
 
2481
		#回傳結果
2482
		return $result;
2483
 
2484
		}#function marquee end
2485
 
2486
	/*
2487
	#函式說明:
2488
	#跑馬燈
2489
	#回傳結果:
2490
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2491
	#$result["content"],跑馬燈的語法
2492
	#$result["function"],當前執行的函數
2493
	#必填參數:
2494
	$conf["runningObject"]="";#字串,跑馬燈的內容.
2495
	#可省略參數:
2496
	#$conf["width"]="";#字串,寬度,預設爲100%.
2497
	#$conf["height"]="";#字串,高度,預設爲50px
2498
	#$conf["direction"]="";#往字串,那個方向跑,方向有"left","right","'up","down",預設爲"left".
2499
	#$conf["behavior"]="";#字串,單方向或來回,預設為"alternate"來回,"scrolling"為單方向.
2500
	#$conf["class"]="";#字串,要套用的css樣式.
2501
	#參考資料:
2502
	#跑馬燈範例=>http://www.quackit.com/html/codes/html_marquee_code.cfm
2503
	#備註:
2504
	#無.
2505
	*/
2506
	public static function legencyMarquee(&$conf){
2507
 
2508
		#初始化要回傳的結果
2509
		$result=array();
2510
 
2511
		#初始化語法
2512
		$result["content"]="";
2513
 
2514
		#如果 $conf 不是陣列
2515
		if(gettype($conf)!="array"){
2516
 
2517
			#設置執行失敗
2518
			$result["status"]="false";
2519
 
2520
			#設置執行錯誤
2521
			$result["error"][]="\$conf變數須為陣列形態";
2522
 
2523
			#如果傳入的參數為 null
2524
			if($conf==null){
2525
 
2526
				#設置執行錯誤訊息
2527
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
2528
 
2529
				}#if end
2530
 
2531
			#回傳結果
2532
			return $result;
2533
 
2534
			}#if end
2535
 
2536
		#檢查參數
2537
		#函式說明:
2538
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
2539
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2540
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
2541
		#$result["function"],當前執行的函式名稱.
2542
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
2543
		#$result[$shouldBtCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
2544
		#$result[$shouldBtCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
2545
		#$result[$shouldBtCheckedVarName]["error"],每個參數設定的錯誤訊息
2546
		#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
2547
		#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
2548
		#$result["notNeedVar"],字串陣列,多餘的參數名稱.
2549
		#必填寫的參數:
2550
		#$conf["variableCheck::checkArguments"]["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
2551
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
2552
		#$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
2553
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("runningObject");
2554
		#$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列 例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double");
2555
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("string");
2556
		#$conf["variableCheck::checkArguments"]["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
2557
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
2558
		#可以省略的參數:
2559
		#$conf["variableCheck::checkArguments"]["canBeEmptyString"],必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true"。
2560
		$conf["variableCheck::checkArguments"]["canBeEmptyString"]="false";
2561
		#$conf["variableCheck::checkArguments"]["skipableVariableName"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
2562
		$conf["variableCheck::checkArguments"]["skipableVariableName"]=array("width","height","direction","behavior","class");
2563
		#$conf["variableCheck::checkArguments"]["skipableVariableType"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
2564
		$conf["variableCheck::checkArguments"]["skipableVariableType"]=array("string","string","string","string","string");
2565
		#$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是必填參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
2566
		$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"]=array("100%","50px","left","alternate",null);
2567
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
2568
		#$conf["variableCheck::checkArguments"]["arrayCountEqualCheck"][]=array("keyFrameStartPoint","keyFrameCssAttribute","keyFrameCssValue");
2569
		#參考資料來源:
2570
		#array_keys=>http://php.net/manual/en/function.array-keys.php
2571
		$checkResult=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
2572
		unset($conf["variableCheck::checkArguments"]);
2573
 
2574
		#如果檢查失敗
2575
		if($checkResult["status"]=="false"){
2576
 
2577
			#設置執行不正常
2578
			$result["status"]="false";
2579
 
2580
			#設置錯誤訊息
2581
			$result["error"]=$checkResult;
2582
 
2583
			#回傳結果
2584
			return $result;
2585
 
2586
			}#if end
2587
 
2588
		#如果檢查不通過
2589
		if($checkResult["passed"]=="false"){
2590
 
2591
			#設置執行不正常
2592
			$result["status"]="false";
2593
 
2594
			#設置錯誤訊息
2595
			$result["error"]=$checkResult;
2596
 
2597
			#回傳結果
2598
			return $result;
2599
 
2600
			}#if end
2601
 
2602
		#套用$conf["width"]設定值
2603
		$conf["width"]=" width=".$conf["width"];
2604
 
2605
		#則套用$conf["height"]設定值
2606
		$conf["height"]=" height=".$conf["height"];
2607
 
2608
		#套用$conf["direction"]設定值
2609
		$conf["direction"]=" direction=".$conf["direction"];
2610
 
2611
		#如果 $conf["class"] 沒設定
2612
		if(!isset($conf["class"])){
2613
 
2614
			#則$conf["class"]爲空
2615
			$conf["class"]="";
2616
 
2617
			}#if end
2618
 
2619
		#如果$conf["class"]有設定
2620
		else{
2621
 
2622
			#則按照設定值
2623
			$conf["class"]=" class=".$conf["class"];
2624
 
2625
			}#else end
2626
 
2627
		#跑馬燈的語法
2628
		$result["content"]="<marquee behavior=".$conf["behavior"]." ".$conf["width"]." ".$conf["height"]." ".$conf["direction"]." ".$conf["class"]." > ".$conf["runningObject"]." </marquee>";
2629
 
2630
		#設置執行正常
2631
		$result["status"]="true";
2632
 
2633
		#回傳結果
2634
		return $result;
2635
 
2636
		}#function legencyMarquee end
2637
 
2638
	/*
2639
	#函式說明:
2640
	#匯入css樣式
2641
	#回傳結果:
2642
	#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
2643
	#$result["functin"],字串,當前函數的名稱.
2644
	#$result["error"],陣列,錯訊訊息.
2645
	#$result["content"],字串,匯入css樣式的語法.
2646
	#必填參數:
2647
	#$conf["cssFileLocation"],陣列字串,多個css樣式檔案的位置與名稱,每個元素代表一個css樣式檔案的位置.
2648
	$conf["cssFileLocation"]=array("");
2649
	#$conf["fileArgu"],字串,php變數__FILE__的內容,亦即該檔案在檔案系統的絕對路徑.
2650
	$conf["fileArgu"]=__FILE__;
2651
	#可省略參數:
2652
	#$conf["userDir"],字串,網頁是否置放於家目錄底下,"true"為是,"false"為不是,預設為"true".
2653
	#$conf["userDir"]="true";
2654
	#參考資料:
2655
	#css_honwto=>http://www.w3schools.com/css/css_howto.asp
2656
	#備註:
2657
	#無.
2658
	*/
2659
	public static function import(&$conf){
2660
 
2661
		#初始化要回傳的內容
2662
		$result=array();
2663
 
2664
		#設置當前執行的函數
2665
		$result["function"]=__FUNCTION__;
2666
 
2667
		#如果 $conf 不為陣列
2668
		if(gettype($conf)!="array"){
2669
 
2670
			#設置執行失敗
2671
			$result["status"]="false";
2672
 
2673
			#設置執行錯誤訊息
2674
			$result["error"][]="\$conf變數須為陣列形態";
2675
 
2676
			#如果傳入的參數為 null
2677
			if($conf==null){
2678
 
2679
				#設置執行錯誤訊息
2680
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
2681
 
2682
				}#if end
2683
 
2684
			#回傳結果
2685
			return $result;
2686
 
2687
			}#if end
2688
 
2689
		#檢查參數
2690
		#函式說明:
2691
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
2692
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2693
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
2694
		#$result["function"],當前執行的函式名稱.
2695
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
2696
		#$result[$shouldBtCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
2697
		#$result[$shouldBtCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
2698
		#$result[$shouldBtCheckedVarName]["error"],每個參數設定的錯誤訊息
2699
		#必填寫的參數:
2700
		#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
2701
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
2702
		#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
2703
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("cssFileLocation","fileArgu");
2704
		#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列 例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double");
2705
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("array","string");
2706
		#$conf["variableCheck::checkArguments"]["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
2707
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
2708
		#可以省略的參數:
2709
		#$conf["canBeEmptyString"],必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true"。
2710
		#$conf["variableCheck::checkArguments"]["canBeEmptyString"]="true";
2711
		#$conf["skipableVariableName"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
2712
		$conf["variableCheck::checkArguments"]["skipableVariableName"]=array("userDir");
2713
		#$conf["skipableVariableType"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
2714
		$conf["variableCheck::checkArguments"]["skipableVariableType"]=array("string");
2715
		#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null代表不指定,若預設值是必填參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
2716
		$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"]=array("true");
2717
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
2718
		#$conf["arrayCountEqualCheck"][]=array();
2719
		$checkResult=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
2720
		unset($conf["variableCheck::checkArguments"]);
2721
 
2722
		#如果檢查失敗
2723
		if($checkResult["status"]=="false"){
2724
 
2725
			#設置執行不正常
2726
			$result["status"]="false";
2727
 
2728
			#設置錯誤訊息
2729
			$result["error"]=$checkResult;
2730
 
2731
			#回傳結果
2732
			return $result;
2733
 
2734
			}#if end
2735
 
2736
		#如果檢查不通過
2737
		if($checkResult["passed"]=="false"){
2738
 
2739
			#設置執行不正常
2740
			$result["status"]="false";
2741
 
2742
			#設置錯誤訊息
2743
			$result["error"]=$checkResult;
2744
 
2745
			#回傳結果
2746
			return $result;
2747
 
2748
			}#if end
2749
 
2750
		#初始化匯入css檔案的語法
2751
		$result["content"]="";
2752
 
2753
		#針對每個要匯入的css樣式
2754
		foreach($conf["cssFileLocation"] as $cssLocation){
2755
 
2756
			#檢查要匯入的css檔案是否存在
2757
			#函式說明:檢查多個檔案與資料夾是否存在.
2758
			#回傳的結果:
2759
			#$result["status"],執行正常與否,"true"代表正常,"false"代表不正常.
2760
			#$result["error"],錯誤訊息陣列.
2761
			#$resutl["function"],當前執行的涵式名稱.
2762
			#$result["allExist"],所有檔案皆存在的識別,"true"代表皆存在,"false"代表沒有全部都存在.
2763
			#$result["varName"][$i],爲第$i個資料夾或檔案的名稱。
2764
			#$result["varExist"][$i],爲第$i個資料夾或檔案是否存在,"true"代表存在,"false"代表不存在。
2765
			#必填的參數:
2766
			$conf["fileAccess::checkMultiFileExist"]["fileArray"]=array($cssLocation);#要檢查書否存在的檔案有哪些,須爲一維陣列數值。
2767
			#可省略參數
2768
			#$conf["fileArgu"],字串,php變數__FILE__的內容,亦即該檔案在檔案系統的絕對路徑,若
2769
			$conf["fileAccess::checkMultiFileExist"]["fileArgu"]=$conf["fileArgu"];
2770
			#$conf["disableWebSearch"],"字串",是否取消「當檔案找不到時,改用catchWebContent類別的wget函數來檢查檔案是否存在於網路上」的功能,"false"不取消,若要取消該功能請設為"true",若抓到的內容為空字串則會視為檔案不存在,預設為"true".
2771
			$conf["fileAccess::checkMultiFileExist"]["disableWebSearch"]="true";
2772
			#$conf["userDir"],字串,網頁是否置放於家目錄底下,"true"為是,"false"為不是,預設為"true".
2773
			$conf["fileAccess::checkMultiFileExist"]["userDir"]=$conf["userDir"];
2774
			#參考資料來源:
2775
			#http://php.net/manual/en/function.file-exists.php
2776
			#http://php.net/manual/en/control-structures.foreach.php
2777
			#var_dump($conf["fileAccess::checkMultiFileExist"]);
2778
			$checkMultiFileExist=fileAccess::checkMultiFileExist($conf["fileAccess::checkMultiFileExist"]);
2779
			unset($conf["fileAccess::checkMultiFileExist"]);
2780
 
2781
			#var_dump($checkMultiFileExist);
2782
 
2783
			#如果檢查要匯入的css檔案失敗
2784
			if($checkMultiFileExist["status"]=="false"){
2785
 
2786
				#設置錯誤狀態
2787
				$result["status"]="false";
2788
 
2789
				#設置錯誤提示
2790
				$result["error"]=$checkMultiFileExist;
2791
 
2792
				#回傳結果
2793
				return $result;
2794
 
2795
				}#if end
2796
 
2797
			#如果檢查要匯入的css檔案不存在
2798
			if($checkMultiFileExist["varExist"][0]=="false"){
2799
 
2800
				#設置錯誤狀態
2801
				$result["status"]="false";
2802
 
2803
				#設置錯誤提示
2804
				$result["error"][]="要匯入的css檔案「".$checkMultiFileExist["varName"][0]."」不存在";
2805
 
2806
				#回傳結果
2807
				return $result;
2808
 
2809
				}#if end
2810
 
2811
			#串接每個要匯入的css樣式
2812
			$result["content"]=$result["content"].PHP_EOL."<link rel=\"stylesheet\" type=\"text/css\" href=\"".$checkMultiFileExist["varName"][0]."\">";
2813
 
2814
			}#foreach end
2815
 
2816
		#設置執行正常
2817
		$result["status"]="true";
2818
 
2819
		#回傳結果
2820
		return $result;
2821
 
2822
		}#function import end
2823
 
2824
	/*
2825
	#函式說明:
2826
	#建立核取效果的style字串
2827
	#回傳結果:
2828
	#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
2829
	#$result["functin"],字串,當前函數的名稱.
2830
	#$result["error"],陣列,錯訊訊息.
2831
	#$result["content"],字串,匯入css樣式的語法.
2832
	#必填參數:
2833
	#$conf["type"],字串,"style"代表包含styleStr屬性的完整element css樣式;"style"代表僅和css屬性與樣式字串;其他內容代表建議以其為名的css類別樣式.
2834
	$conf["type"]="styleStr";
2835
	#可省略參數:
2836
	#無.
2837
	#參考資料:
2838
	#無.
2839
	#備註:
2840
	#無.
2841
	*/
2842
	public static function pressed(&$conf){
2843
 
2844
		#初始化要回傳的結果
2845
		$result=array();
2846
 
2847
		#取得當前執行的函數名稱
2848
		$result["function"]=__FUNCTION__;
2849
 
2850
		#初始化style語法
2851
		$result["content"]="";
2852
 
2853
		#如果沒有參數
2854
		if(func_num_args()==0){
2855
 
2856
			#設置執行失敗
2857
			$result["status"]="false";
2858
 
2859
			#設置執行錯誤訊息
2860
			$result["error"]="函數".$result["function"]."需要參數";
2861
 
2862
			#回傳結果
2863
			return $result;
2864
 
2865
			}#if end
2866
 
2867
		#如果 $conf 不為陣列
2868
		if(gettype($conf)!="array"){
2869
 
2870
			#設置執行失敗
2871
			$result["status"]="false";
2872
 
2873
			#設置執行錯誤訊息
2874
			$result["error"][]="\$conf變數須為陣列形態";
2875
 
2876
			#如果傳入的參數為 null
2877
			if($conf==null){
2878
 
2879
				#設置執行錯誤訊息
2880
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
2881
 
2882
				}#if end
2883
 
2884
			#回傳結果
2885
			return $result;
2886
 
2887
			}#if end
2888
 
2889
		#檢查參數
2890
		#函式說明:
2891
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
2892
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2893
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
2894
		#$result["function"],當前執行的函式名稱.
2895
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
2896
		#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
2897
		#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
2898
		#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
2899
		#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
2900
		#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
2901
		#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
2902
		#$result["notNeedVar"],字串陣列,多餘的參數名稱.
2903
		#必填寫的參數:
2904
		#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
2905
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
2906
		#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
2907
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("type");
2908
		#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
2909
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("string");
2910
		#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
2911
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
2912
		#可以省略的參數:
2913
		#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
2914
		$conf["variableCheck::checkArguments"]["canBeEmptyString"]="false";
2915
		#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或集合.
2916
		#$conf["skipableVariableCanNotBeEmpty"]=array();
2917
		#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
2918
		#$conf["skipableVariableName"]=array();
2919
		#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
2920
		#$conf["skipableVariableType"]=array();
2921
		#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
2922
		#$conf["skipableVarDefaultValue"]=array("");
2923
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
2924
		#$conf["arrayCountEqualCheck"][]=array();
2925
		#參考資料來源:
2926
		#array_keys=>http://php.net/manual/en/function.array-keys.php
2927
		$checkArguments=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
2928
		unset($conf["variableCheck::checkArguments"]);
2929
 
2930
		#如果檢查參數失敗
2931
		if($checkArguments["status"]=="false"){
2932
 
2933
			#設置執行不正常
2934
			$result["status"]="false";
2935
 
2936
			#設置執行錯誤
2937
			$result["error"]=$checkArguments;
2938
 
2939
			#回傳結果
2940
			return $result;
2941
 
2942
			}#if end
2943
 
2944
		#如果檢查參數不通過
2945
		if($checkArguments["passed"]=="false"){
2946
 
2947
			#設置執行不正常
2948
			$result["status"]="false";
2949
 
2950
			#設置執行錯誤
2951
			$result["error"]=$checkArguments;
2952
 
2953
			#回傳結果
2954
			return $result;
2955
 
2956
			}#if end
2957
 
2958
		#判斷 $conf["type"] 的內容
2959
		switch($conf["type"]){
2960
 
2961
			#如果為 "styleStr"
2962
			case "styleStr":
2963
 
2964
				#函式說明:
2965
				#建立給與html標籤使用的style屬性字串.
2966
				#回傳的結果:
2967
				#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
2968
				#$result["function"],當前執行的函數
2969
				#$result["error"],錯誤訊息陣列
2970
				#$result["content"],css設定內容
2971
				#必填的參數:
2972
				$conf["css::styleStr"]["styleName"]=array("background-color","border","box-shadow");#為屬性名稱,須為陣列值
2973
				$conf["css::styleStr"]["styleValue"]=array("#EBEBEB","#ADADAD solid 1px","0px 3px 5px rgba(0, 0, 0, 0.125) inset");#為屬性值,須為陣列值
2974
				$styleStr=css::styleStr($conf["css::styleStr"]);
2975
				unset($conf["css::styleStr"]);
2976
 
2977
				#如果建立style屬性字串失敗
2978
				if($styleStr["status"]=="false"){
2979
 
2980
					#設置執行不正常
2981
					$result["status"]="false";
2982
 
2983
					#設置執行錯誤
2984
					$result["error"]=$styleStr;
2985
 
2986
					#回傳結果
2987
					return $result;
2988
 
2989
					}#if end
2990
 
2991
				#設置含「style="..."」的css樣式
2992
				$result["content"]=$styleStr["content"];
2993
 
2994
				#跳出 switch
2995
				break;
2996
 
2997
			#如果為 "style"
2998
			case "style";
2999
 
3000
				#設置不含「style="..."」的css樣式
3001
				$result["content"]="background-color:#EBEBEB;border:#ADADAD solid 1px;box-shadow:0px 3px 5px rgba(0, 0, 0, 0.125) inset;";
3002
 
3003
				#跳出 switch
3004
				break;
3005
 
3006
			#其他內容
3007
			default:
3008
 
3009
				#建立按下效果的 css 類別樣式
3010
				#函式說明:
3011
				#創建 css 樣式,前面會自動加上「.」.
3012
				#回傳的結果:
3013
				#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3014
				#$result["css"],css設定內容
3015
				#$result["function"],當前執行的函數
3016
				#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
3017
				#必填的參數:
3018
				$conf["css::createCssStyle"]["cssStyleName"]=$conf["type"];#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
3019
				$conf["css::createCssStyle"]["attributes"]=array("background-color","border","box-shadow");#為屬性名稱,須為陣列值
3020
				$conf["css::createCssStyle"]["content"]=array("#EBEBEB","#ADADAD solid 1px","0px 3px 5px rgba(0, 0, 0, 0.125) inset");#為屬性值,須為陣列值
3021
				$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
3022
				unset($conf["css::createCssStyle"]);
3023
 
3024
				#如果建立樣式類別失敗
3025
				if($createCssStyle["status"]=="false"){
3026
 
3027
					#設置執行不正常
3028
					$result["status"]="false";
3029
 
3030
					#設置執行錯誤訊息
3031
					$result["error"]=$createCssStyle;
3032
 
3033
					#回傳結果
3034
					return $result;
3035
 
3036
					}#if end
3037
 
3038
				#串接按下的css類別樣式
3039
				$result["content"]=$result["content"].$createCssStyle["css"];
3040
 
3041
			}#switch end
3042
 
3043
		#設置執行正常
3044
		$result["status"]="true";
3045
 
3046
		#回傳結果
3047
		return $result;
3048
 
3049
		}#function pressed end
3050
 
3051
	/*
3052
	#函式說明:
3053
	#建立按下效果的style字串
3054
	#回傳結果:
3055
	#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
3056
	#$result["functin"],字串,當前函數的名稱.
3057
	#$result["error"],陣列,錯訊訊息.
3058
	#$result["content"],字串,匯入css樣式的語法.
3059
	#必填參數:
3060
	#$conf["type"],字串,"style"代表包含styleStr屬性的完整element css樣式;"style"代表僅和css屬性與樣式字串;其他內容代表建議以其為名的css類別樣式.
3061
	$conf["type"]="styleStr";
3062
	#可省略參數:
3063
	#無.
3064
	#參考資料:
3065
	#無.
3066
	#備註:
3067
	#無.
3068
	*/
3069
	public static function press(&$conf){
3070
 
3071
		#初始化要回傳的結果
3072
		$result=array();
3073
 
3074
		#取得當前執行的函數名稱
3075
		$result["function"]=__FUNCTION__;
3076
 
3077
		#初始化style語法
3078
		$result["content"]="";
3079
 
3080
		#如果沒有參數
3081
		if(func_num_args()==0){
3082
 
3083
			#設置執行失敗
3084
			$result["status"]="false";
3085
 
3086
			#設置執行錯誤訊息
3087
			$result["error"]="函數".$result["function"]."需要參數";
3088
 
3089
			#回傳結果
3090
			return $result;
3091
 
3092
			}#if end
3093
 
3094
		#如果 $conf 不為陣列
3095
		if(gettype($conf)!="array"){
3096
 
3097
			#設置執行失敗
3098
			$result["status"]="false";
3099
 
3100
			#設置執行錯誤訊息
3101
			$result["error"][]="\$conf變數須為陣列形態";
3102
 
3103
			#如果傳入的參數為 null
3104
			if($conf==null){
3105
 
3106
				#設置執行錯誤訊息
3107
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
3108
 
3109
				}#if end
3110
 
3111
			#回傳結果
3112
			return $result;
3113
 
3114
			}#if end
3115
 
3116
		#檢查參數
3117
		#函式說明:
3118
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
3119
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3120
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
3121
		#$result["function"],當前執行的函式名稱.
3122
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
3123
		#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
3124
		#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
3125
		#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
3126
		#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
3127
		#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
3128
		#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
3129
		#$result["notNeedVar"],字串陣列,多餘的參數名稱.
3130
		#必填寫的參數:
3131
		#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
3132
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
3133
		#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
3134
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("type");
3135
		#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
3136
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("string");
3137
		#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
3138
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
3139
		#可以省略的參數:
3140
		#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
3141
		$conf["variableCheck::checkArguments"]["canBeEmptyString"]="false";
3142
		#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或集合.
3143
		#$conf["skipableVariableCanNotBeEmpty"]=array();
3144
		#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
3145
		#$conf["skipableVariableName"]=array();
3146
		#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
3147
		#$conf["skipableVariableType"]=array();
3148
		#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
3149
		#$conf["skipableVarDefaultValue"]=array("");
3150
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
3151
		#$conf["arrayCountEqualCheck"][]=array();
3152
		#參考資料來源:
3153
		#array_keys=>http://php.net/manual/en/function.array-keys.php
3154
		$checkArguments=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
3155
		unset($conf["variableCheck::checkArguments"]);
3156
 
3157
		#如果檢查參數失敗
3158
		if($checkArguments["status"]=="false"){
3159
 
3160
			#設置執行不正常
3161
			$result["status"]="false";
3162
 
3163
			#設置執行錯誤
3164
			$result["error"]=$checkArguments;
3165
 
3166
			#回傳結果
3167
			return $result;
3168
 
3169
			}#if end
3170
 
3171
		#如果檢查參數不通過
3172
		if($checkArguments["passed"]=="false"){
3173
 
3174
			#設置執行不正常
3175
			$result["status"]="false";
3176
 
3177
			#設置執行錯誤
3178
			$result["error"]=$checkArguments;
3179
 
3180
			#回傳結果
3181
			return $result;
3182
 
3183
			}#if end
3184
 
3185
		#判斷 $conf["type"] 的內容
3186
		switch($conf["type"]){
3187
 
3188
			#如果為 "styleStr"
3189
			case "styleStr":
3190
 
3191
				#函式說明:
3192
				#建立給與html標籤使用的style屬性字串.
3193
				#回傳的結果:
3194
				#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3195
				#$result["function"],當前執行的函數
3196
				#$result["error"],錯誤訊息陣列
3197
				#$result["content"],css設定內容
3198
				#必填的參數:
3199
				$conf["css::styleStr"]["styleName"]=array("position","top","background-color","border","box-shadow","outline");#為屬性名稱,須為陣列值
3200
				$conf["css::styleStr"]["styleValue"]=array("relative","1px","#EBEBEB","#ADADAD solid 1px","0px 3px 5px rgba(0, 0, 0, 0.125) inset","medium none");#為屬性值,須為陣列值
3201
				$styleStr=css::styleStr($conf["css::styleStr"]);
3202
				unset($conf["css::styleStr"]);
3203
 
3204
				#如果建立style屬性字串失敗
3205
				if($styleStr["status"]=="false"){
3206
 
3207
					#設置執行不正常
3208
					$result["status"]="false";
3209
 
3210
					#設置執行錯誤
3211
					$result["error"]=$styleStr;
3212
 
3213
					#回傳結果
3214
					return $result;
3215
 
3216
					}#if end
3217
 
3218
				#設置含「style="..."」的css樣式
3219
				$result["content"]=$styleStr["content"];
3220
 
3221
				#跳出 switch
3222
				break;
3223
 
3224
			#如果為 "style"
3225
			case "style";
3226
 
3227
				#設置不含「style="..."」的css樣式
3228
				$result["content"]="position:relative;top:1px;background-color:#EBEBEB;border:#ADADAD solid 1px;box-shadow:0px 3px 5px rgba(0, 0, 0, 0.125) inset;outline:medium none;";
3229
 
3230
				#跳出 switch
3231
				break;
3232
 
3233
			#其他內容
3234
			default:
3235
 
3236
				#建立按下效果的 css 類別樣式
3237
				#函式說明:
3238
				#創建 css 樣式,前面會自動加上「.」.
3239
				#回傳的結果:
3240
				#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3241
				#$result["css"],css設定內容
3242
				#$result["function"],當前執行的函數
3243
				#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
3244
				#必填的參數:
3245
				$conf["css::createCssStyle"]["cssStyleName"]=$conf["type"];#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
3246
				$conf["css::createCssStyle"]["attributes"]=array("position","top","background-color","border","box-shadow","outline");#為屬性名稱,須為陣列值
3247
				$conf["css::createCssStyle"]["content"]=array("relative","1px","#EBEBEB","#ADADAD solid 1px","0px 3px 5px rgba(0, 0, 0, 0.125) inset","medium nono;");#為屬性值,須為陣列值
3248
				$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
3249
				unset($conf["css::createCssStyle"]);
3250
 
3251
				#如果建立樣式類別失敗
3252
				if($createCssStyle["status"]=="false"){
3253
 
3254
					#設置執行不正常
3255
					$result["status"]="false";
3256
 
3257
					#設置執行錯誤訊息
3258
					$result["error"]=$createCssStyle;
3259
 
3260
					#回傳結果
3261
					return $result;
3262
 
3263
					}#if end
3264
 
3265
				#串接按下的css類別樣式
3266
				$result["content"]=$result["content"].$createCssStyle["css"];
3267
 
3268
			}#switch end
3269
 
3270
		#設置執行正常
3271
		$result["status"]="true";
3272
 
3273
		#回傳結果
3274
		return $result;
3275
 
3276
		}#function press end
3277
 
3278
	/*
3279
	#函式說明:
3280
	#在文字上劃線條的css樣式
3281
	#回傳結果:
3282
	#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
3283
	#$result["functin"],字串,當前函數的名稱.
3284
	#$result["error"],陣列,錯訊訊息.
3285
	#$result["content"],字串,匯入css樣式的語法.
3286
	#必填參數:
3287
	#$conf["type"],字串,線條要怎麼呈現,"none"代表無線條;"underline"代表底線;"overline"代表頂部劃線;"line-through"代表文中間劃線.
3288
	$conf["type"]="none";
3289
	#$conf["returnType"],字串,要以什麼形式回傳,"css"代表含style屬性的內容;"cssStr"代表僅和css樣式;其餘代表要建立名為$conf["rerurnType"]的css類別樣式.
3290
	$conf["returnType"]="css";
3291
	#可省略參數:
3292
	#無.
3293
	#參考資料:
3294
	#無.
3295
	#備註:
3296
	#無.
3297
	*/
3298
	public static function textLine(&$conf){
3299
 
3300
		#初始化要回傳的結果
3301
		$result=array();
3302
 
3303
		#取得當前執行的函數名稱
3304
		$result["function"]=__FUNCTION__;
3305
 
3306
		#初始化style語法
3307
		$result["content"]="";
3308
 
3309
		#如果沒有參數
3310
		if(func_num_args()==0){
3311
 
3312
			#設置執行失敗
3313
			$result["status"]="false";
3314
 
3315
			#設置執行錯誤訊息
3316
			$result["error"]="函數".$result["function"]."需要參數";
3317
 
3318
			#回傳結果
3319
			return $result;
3320
 
3321
			}#if end
3322
 
3323
		#如果 $conf 不為陣列
3324
		if(gettype($conf)!="array"){
3325
 
3326
			#設置執行失敗
3327
			$result["status"]="false";
3328
 
3329
			#設置執行錯誤訊息
3330
			$result["error"][]="\$conf變數須為陣列形態";
3331
 
3332
			#如果傳入的參數為 null
3333
			if($conf==null){
3334
 
3335
				#設置執行錯誤訊息
3336
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
3337
 
3338
				}#if end
3339
 
3340
			#回傳結果
3341
			return $result;
3342
 
3343
			}#if end
3344
 
3345
		#檢查參數
3346
		#函式說明:
3347
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
3348
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3349
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
3350
		#$result["function"],當前執行的函式名稱.
3351
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
3352
		#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
3353
		#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
3354
		#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
3355
		#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
3356
		#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
3357
		#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
3358
		#$result["notNeedVar"],字串陣列,多餘的參數名稱.
3359
		#必填寫的參數:
3360
		#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
3361
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
3362
		#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
3363
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("type","returnType");
3364
		#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
3365
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("string","string");
3366
		#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
3367
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
3368
		#可以省略的參數:
3369
		#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
3370
		$conf["variableCheck::checkArguments"]["canBeEmptyString"]="false";
3371
		#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或集合.
3372
		#$conf["skipableVariableCanNotBeEmpty"]=array();
3373
		#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
3374
		#$conf["skipableVariableName"]=array();
3375
		#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
3376
		#$conf["skipableVariableType"]=array();
3377
		#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
3378
		#$conf["skipableVarDefaultValue"]=array("");
3379
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
3380
		#$conf["arrayCountEqualCheck"][]=array();
3381
		#參考資料來源:
3382
		#array_keys=>http://php.net/manual/en/function.array-keys.php
3383
		$checkArguments=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
3384
		unset($conf["variableCheck::checkArguments"]);
3385
 
3386
		#如果檢查參數失敗
3387
		if($checkArguments["status"]=="false"){
3388
 
3389
			#設置執行不正常
3390
			$result["status"]="false";
3391
 
3392
			#設置執行錯誤
3393
			$result["error"]=$checkArguments;
3394
 
3395
			#回傳結果
3396
			return $result;
3397
 
3398
			}#if end
3399
 
3400
		#如果檢查參數不通過
3401
		if($checkArguments["passed"]=="false"){
3402
 
3403
			#設置執行不正常
3404
			$result["status"]="false";
3405
 
3406
			#設置執行錯誤
3407
			$result["error"]=$checkArguments;
3408
 
3409
			#回傳結果
3410
			return $result;
3411
 
3412
			}#if end
3413
 
3414
		#判斷 $conf["type"] 的內容
3415
		switch($conf["type"]){
3416
 
3417
			#如果為 "none"
3418
			case "none":
3419
 
3420
				#如果為 "css"
3421
				if($conf["returnType"]=="css"){
3422
 
3423
					#函式說明:
3424
					#建立給與html標籤使用的style屬性字串.
3425
					#回傳的結果:
3426
					#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3427
					#$result["function"],當前執行的函數
3428
					#$result["error"],錯誤訊息陣列
3429
					#$result["content"],css設定內容
3430
					#必填的參數:
3431
					$conf["css::styleStr"]["styleName"]=array("text-decoration");#為屬性名稱,須為陣列值
3432
					$conf["css::styleStr"]["styleValue"]=array("none");#為屬性值,須為陣列值
3433
					$styleStr=css::styleStr($conf["css::styleStr"]);
3434
					unset($conf["css::styleStr"]);
3435
 
3436
					#如果建立style屬性字串失敗
3437
					if($styleStr["status"]=="false"){
3438
 
3439
						#設置執行不正常
3440
						$result["status"]="false";
3441
 
3442
						#設置執行錯誤
3443
						$result["error"]=$styleStr;
3444
 
3445
						#回傳結果
3446
						return $result;
3447
 
3448
						}#if end
3449
 
3450
					#設置含「style="..."」的css樣式
3451
					$result["content"]=$styleStr["content"];
3452
 
3453
					}#if end
3454
 
3455
				#如果為 "cssStr"
3456
				else if($conf["returnType"]=="cssStr"){
3457
 
3458
					$result["content"]=$result["content"]."text-decoration:none;";
3459
 
3460
					}#if end
3461
 
3462
				#如果為其他內容
3463
				else{
3464
 
3465
					#建立按下效果的 css 類別樣式
3466
					#函式說明:
3467
					#創建 css 樣式,前面會自動加上「.」.
3468
					#回傳的結果:
3469
					#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3470
					#$result["css"],css設定內容
3471
					#$result["function"],當前執行的函數
3472
					#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
3473
					#必填的參數:
3474
					$conf["css::createCssStyle"]["cssStyleName"]=$conf["returnType"];#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
3475
					$conf["css::createCssStyle"]["attributes"]=array("text-decoration");#為屬性名稱,須為陣列值
3476
					$conf["css::createCssStyle"]["content"]=array("none");#為屬性值,須為陣列值
3477
					$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
3478
					unset($conf["css::createCssStyle"]);
3479
 
3480
					#如果建立樣式類別失敗
3481
					if($createCssStyle["status"]=="false"){
3482
 
3483
						#設置執行不正常
3484
						$result["status"]="false";
3485
 
3486
						#設置執行錯誤訊息
3487
						$result["error"]=$createCssStyle;
3488
 
3489
						#回傳結果
3490
						return $result;
3491
 
3492
						}#if end
3493
 
3494
					#串接按下的css類別樣式
3495
					$result["content"]=$result["content"].$createCssStyle["css"];
3496
 
3497
					}#else end
3498
 
3499
				#跳出 switch
3500
				break;
3501
 
3502
			#如果為 "underline"
3503
			case "underline";
3504
 
3505
				#如果為 "css"
3506
				if($conf["returnType"]=="css"){
3507
 
3508
					#函式說明:
3509
					#建立給與html標籤使用的style屬性字串.
3510
					#回傳的結果:
3511
					#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3512
					#$result["function"],當前執行的函數
3513
					#$result["error"],錯誤訊息陣列
3514
					#$result["content"],css設定內容
3515
					#必填的參數:
3516
					$conf["css::styleStr"]["styleName"]=array("text-decoration");#為屬性名稱,須為陣列值
3517
					$conf["css::styleStr"]["styleValue"]=array("underline");#為屬性值,須為陣列值
3518
					$styleStr=css::styleStr($conf["css::styleStr"]);
3519
					unset($conf["css::styleStr"]);
3520
 
3521
					#如果建立style屬性字串失敗
3522
					if($styleStr["status"]=="false"){
3523
 
3524
						#設置執行不正常
3525
						$result["status"]="false";
3526
 
3527
						#設置執行錯誤
3528
						$result["error"]=$styleStr;
3529
 
3530
						#回傳結果
3531
						return $result;
3532
 
3533
						}#if end
3534
 
3535
					#設置含「style="..."」的css樣式
3536
					$result["content"]=$styleStr["content"];
3537
 
3538
					}#if end
3539
 
3540
				#如果為 "cssStr"
3541
				else if($conf["returnType"]=="cssStr"){
3542
 
3543
					$result["content"]=$result["content"]."text-decoration:underline;";
3544
 
3545
					}#if end
3546
 
3547
				#如果為其他內容
3548
				else{
3549
 
3550
					#建立按下效果的 css 類別樣式
3551
					#函式說明:
3552
					#創建 css 樣式,前面會自動加上「.」.
3553
					#回傳的結果:
3554
					#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3555
					#$result["css"],css設定內容
3556
					#$result["function"],當前執行的函數
3557
					#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
3558
					#必填的參數:
3559
					$conf["css::createCssStyle"]["cssStyleName"]=$conf["returnType"];#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
3560
					$conf["css::createCssStyle"]["attributes"]=array("text-decoration");#為屬性名稱,須為陣列值
3561
					$conf["css::createCssStyle"]["content"]=array("underline");#為屬性值,須為陣列值
3562
					$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
3563
					unset($conf["css::createCssStyle"]);
3564
 
3565
					#如果建立樣式類別失敗
3566
					if($createCssStyle["status"]=="false"){
3567
 
3568
						#設置執行不正常
3569
						$result["status"]="false";
3570
 
3571
						#設置執行錯誤訊息
3572
						$result["error"]=$createCssStyle;
3573
 
3574
						#回傳結果
3575
						return $result;
3576
 
3577
						}#if end
3578
 
3579
					#串接按下的css類別樣式
3580
					$result["content"]=$result["content"].$createCssStyle["css"];
3581
 
3582
					}#else end
3583
 
3584
				#跳出 switch
3585
				break;
3586
 
3587
			#如果是 overline
3588
			case "overline":
3589
 
3590
				#如果為 "css"
3591
				if($conf["returnType"]=="css"){
3592
 
3593
					#函式說明:
3594
					#建立給與html標籤使用的style屬性字串.
3595
					#回傳的結果:
3596
					#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3597
					#$result["function"],當前執行的函數
3598
					#$result["error"],錯誤訊息陣列
3599
					#$result["content"],css設定內容
3600
					#必填的參數:
3601
					$conf["css::styleStr"]["styleName"]=array("text-decoration");#為屬性名稱,須為陣列值
3602
					$conf["css::styleStr"]["styleValue"]=array("overline");#為屬性值,須為陣列值
3603
					$styleStr=css::styleStr($conf["css::styleStr"]);
3604
					unset($conf["css::styleStr"]);
3605
 
3606
					#如果建立style屬性字串失敗
3607
					if($styleStr["status"]=="false"){
3608
 
3609
						#設置執行不正常
3610
						$result["status"]="false";
3611
 
3612
						#設置執行錯誤
3613
						$result["error"]=$styleStr;
3614
 
3615
						#回傳結果
3616
						return $result;
3617
 
3618
						}#if end
3619
 
3620
					#設置含「style="..."」的css樣式
3621
					$result["content"]=$styleStr["content"];
3622
 
3623
					}#if end
3624
 
3625
				#如果為 "cssStr"
3626
				else if($conf["returnType"]=="cssStr"){
3627
 
3628
					$result["content"]=$result["content"]."text-decoration:overline;";
3629
 
3630
					}#if end
3631
 
3632
				#如果為其他內容
3633
				else{
3634
 
3635
					#建立按下效果的 css 類別樣式
3636
					#函式說明:
3637
					#創建 css 樣式,前面會自動加上「.」.
3638
					#回傳的結果:
3639
					#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3640
					#$result["css"],css設定內容
3641
					#$result["function"],當前執行的函數
3642
					#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
3643
					#必填的參數:
3644
					$conf["css::createCssStyle"]["cssStyleName"]=$conf["returnType"];#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
3645
					$conf["css::createCssStyle"]["attributes"]=array("text-decoration");#為屬性名稱,須為陣列值
3646
					$conf["css::createCssStyle"]["content"]=array("overline");#為屬性值,須為陣列值
3647
					$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
3648
					unset($conf["css::createCssStyle"]);
3649
 
3650
					#如果建立樣式類別失敗
3651
					if($createCssStyle["status"]=="false"){
3652
 
3653
						#設置執行不正常
3654
						$result["status"]="false";
3655
 
3656
						#設置執行錯誤訊息
3657
						$result["error"]=$createCssStyle;
3658
 
3659
						#回傳結果
3660
						return $result;
3661
 
3662
						}#if end
3663
 
3664
					#串接按下的css類別樣式
3665
					$result["content"]=$result["content"].$createCssStyle["css"];
3666
 
3667
					}#else end
3668
 
3669
				#跳出 switch
3670
				break;
3671
 
3672
			#如果是 "line-through"
3673
			case "line-through":
3674
 
3675
				#如果為 "css"
3676
				if($conf["returnType"]=="css"){
3677
 
3678
					#函式說明:
3679
					#建立給與html標籤使用的style屬性字串.
3680
					#回傳的結果:
3681
					#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3682
					#$result["function"],當前執行的函數
3683
					#$result["error"],錯誤訊息陣列
3684
					#$result["content"],css設定內容
3685
					#必填的參數:
3686
					$conf["css::styleStr"]["styleName"]=array("text-decoration");#為屬性名稱,須為陣列值
3687
					$conf["css::styleStr"]["styleValue"]=array("line-through");#為屬性值,須為陣列值
3688
					$styleStr=css::styleStr($conf["css::styleStr"]);
3689
					unset($conf["css::styleStr"]);
3690
 
3691
					#如果建立style屬性字串失敗
3692
					if($styleStr["status"]=="false"){
3693
 
3694
						#設置執行不正常
3695
						$result["status"]="false";
3696
 
3697
						#設置執行錯誤
3698
						$result["error"]=$styleStr;
3699
 
3700
						#回傳結果
3701
						return $result;
3702
 
3703
						}#if end
3704
 
3705
					#設置含「style="..."」的css樣式
3706
					$result["content"]=$styleStr["content"];
3707
 
3708
					}#if end
3709
 
3710
				#如果為 "cssStr"
3711
				else if($conf["returnType"]=="cssStr"){
3712
 
3713
					$result["content"]=$result["content"]."text-decoration:line-through;";
3714
 
3715
					}#if end
3716
 
3717
				#如果為其他內容
3718
				else{
3719
 
3720
					#建立按下效果的 css 類別樣式
3721
					#函式說明:
3722
					#創建 css 樣式,前面會自動加上「.」.
3723
					#回傳的結果:
3724
					#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3725
					#$result["css"],css設定內容
3726
					#$result["function"],當前執行的函數
3727
					#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
3728
					#必填的參數:
3729
					$conf["css::createCssStyle"]["cssStyleName"]=$conf["returnType"];#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
3730
					$conf["css::createCssStyle"]["attributes"]=array("text-decoration");#為屬性名稱,須為陣列值
3731
					$conf["css::createCssStyle"]["content"]=array("line-through");#為屬性值,須為陣列值
3732
					$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
3733
					unset($conf["css::createCssStyle"]);
3734
 
3735
					#如果建立樣式類別失敗
3736
					if($createCssStyle["status"]=="false"){
3737
 
3738
						#設置執行不正常
3739
						$result["status"]="false";
3740
 
3741
						#設置執行錯誤訊息
3742
						$result["error"]=$createCssStyle;
3743
 
3744
						#回傳結果
3745
						return $result;
3746
 
3747
						}#if end
3748
 
3749
					#串接按下的css類別樣式
3750
					$result["content"]=$result["content"].$createCssStyle["css"];
3751
 
3752
					}#else end
3753
 
3754
				#跳出 switch
3755
				break;
3756
 
3757
			#其他內容
3758
			default:
3759
 
3760
				#設置執行不正常
3761
				$result["status"]="false";
3762
 
3763
				#設置執行錯誤訊息
3764
				$result["error"][]="不存在的形態";
3765
 
3766
				#回傳結果
3767
				return $result;
3768
 
3769
			}#switch end
3770
 
3771
		#設置執行正常
3772
		$result["status"]="true";
3773
 
3774
		#回傳結果
3775
		return $result;
3776
 
3777
		}#function textDecoration end
3778
 
3779
	/*
3780
	#函式說明:
3781
	#響應式css樣式,依據瀏覽器的環境(寬度,高度...),使用指定的css樣式
3782
	#回傳結果:
3783
	#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
3784
	#$result["functin"],字串,當前函數的名稱.
3785
	#$result["error"],陣列,錯訊訊息.
3786
	#$result["content"],字串,匯入css樣式的語法.
3787
	#必填參數:
3788
	#$conf["conName"],陣列字串,判斷的條件屬性陣列,可以用"min-width","max-width"...).
3789
	$conf["conName"]=array("");
3790
	#$conf["conVal"],陣列字串,判斷的條件數值陣列,可以為"100px"...
3791
	$conf["conVal"]=array();
3792
	#$conf["target"],陣列字串,要設置哪些目標的css樣式,若為class樣式則要在名稱開頭補上「.」,也可以使用html標籤與階層關係等.
3793
	$conf["target"]=array();
3794
	#conf["styleAttr"],二維陣列字串,針對每個$conf["target"]要使用的css樣式屬性陣列.
3795
	$conf["styleAttr"]=array(array(),);
3796
	#conf["styleVal"],二維陣列字串,針對每個$conf["target"]要使用的css樣式數值陣列.
3797
	$conf["styleVal"]=array(array(),);
3798
	#可省略參數:
3799
	#無.
3800
	#參考資料:
3801
	#無.
3802
	#備註:
3803
	#無.
3804
	*/
3805
	public static function rwd(&$conf){
3806
 
3807
		#初始化要回傳的結果
3808
		$result=array();
3809
 
3810
		#取得當前執行的函數名稱
3811
		$result["function"]=__FUNCTION__;
3812
 
3813
		#如果沒有參數
3814
		if(func_num_args()==0){
3815
 
3816
			#設置執行失敗
3817
			$result["status"]="false";
3818
 
3819
			#設置執行錯誤訊息
3820
			$result["error"]="函數".$result["function"]."需要參數";
3821
 
3822
			#回傳結果
3823
			return $result;
3824
 
3825
			}#if end
3826
 
3827
		#如果 $conf 不為陣列
3828
		if(gettype($conf)!="array"){
3829
 
3830
			#設置執行失敗
3831
			$result["status"]="false";
3832
 
3833
			#設置執行錯誤訊息
3834
			$result["error"][]="\$conf變數須為陣列形態";
3835
 
3836
			#如果傳入的參數為 null
3837
			if($conf==null){
3838
 
3839
				#設置執行錯誤訊息
3840
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
3841
 
3842
				}#if end
3843
 
3844
			#回傳結果
3845
			return $result;
3846
 
3847
			}#if end
3848
 
3849
		#檢查參數
3850
		#函式說明:
3851
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
3852
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
3853
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
3854
		#$result["function"],當前執行的函式名稱.
3855
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
3856
		#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
3857
		#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
3858
		#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
3859
		#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
3860
		#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
3861
		#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
3862
		#$result["notNeedVar"],字串陣列,多餘的參數名稱.
3863
		#必填寫的參數:
3864
		#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
3865
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
3866
		#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
3867
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("target","conName","conVal","styleAttr","styleVal");
3868
		#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
3869
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("array","array","array","array","array");
3870
		#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
3871
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
3872
		#可以省略的參數:
3873
		#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
3874
		$conf["variableCheck::checkArguments"]["canBeEmptyString"]="false";
3875
		#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或集合.
3876
		#$conf["skipableVariableCanNotBeEmpty"]=array();
3877
		#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
3878
		#$conf["skipableVariableName"]=array();
3879
		#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
3880
		#$conf["skipableVariableType"]=array();
3881
		#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
3882
		#$conf["skipableVarDefaultValue"]=array("");
3883
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
3884
		$conf["variableCheck::checkArguments"]["arrayCountEqualCheck"][]=array("conName","conVal");
3885
		$conf["variableCheck::checkArguments"]["arrayCountEqualCheck"][]=array("target","styleAttr","styleVal");
3886
		#參考資料來源:
3887
		#array_keys=>http://php.net/manual/en/function.array-keys.php
3888
		$checkArguments=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
3889
		unset($conf["variableCheck::checkArguments"]);
3890
 
3891
		#如果檢查參數失敗
3892
		if($checkArguments["status"]=="false"){
3893
 
3894
			#設置執行不正常
3895
			$result["status"]="false";
3896
 
3897
			#設置執行錯誤
3898
			$result["error"]=$checkArguments;
3899
 
3900
			#回傳結果
3901
			return $result;
3902
 
3903
			}#if end
3904
 
3905
		#如果檢查參數不通過
3906
		if($checkArguments["passed"]=="false"){
3907
 
3908
			#設置執行不正常
3909
			$result["status"]="false";
3910
 
3911
			#設置執行錯誤
3912
			$result["error"]=$checkArguments;
3913
 
3914
			#回傳結果
3915
			return $result;
3916
 
3917
			}#if end
3918
 
3919
		#RWD樣式設定的開頭
3920
		$result["content"]="<style>@media only screen";
3921
 
3922
		#針對每個 $conf["conName"]
3923
		foreach($conf["conName"] as $key=>$conName){
3924
 
3925
			#串接 screen 的條件
3926
			$result["content"]=$result["content"]." and (".$conName.":".$conf["conVal"][$key]."){";
3927
 
3928
			}#foreach end
3929
 
3930
		#針對每個 $conf["target"]
3931
		foreach($conf["target"] as $key=>$target){
3932
 
3933
			#串接目標字串
3934
			$result["content"]=$result["content"].$target."{";
3935
 
3936
			#針對每個 $conf["styleAttr"][$key]
3937
			foreach($conf["styleAttr"][$key] as $styleKey=>$styleAttr){
3938
 
3939
				#串接樣式
3940
				$result["content"]=$result["content"].$styleAttr.":".$conf["styleVal"][$key][$styleKey].";";
3941
 
3942
				}#foreach
3943
 
3944
			#串接目標樣式結束
3945
			$result["content"]=$result["content"]."}";
3946
 
3947
			}#foreach end
3948
 
3949
		#RWD樣式設定的結尾
3950
		$result["content"]=$result["content"]."}</style>";
3951
 
3952
		#設置執行正常
3953
		$result["status"]="true";
3954
 
3955
		#回傳結果
3956
		return $result;
3957
 
3958
		}#function rwd end
3959
 
3960
	/*
3961
	#函式說明:
3962
	#在特定元素之前或之後放置內容
3963
	#回傳結果:
3964
	#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
3965
	#$result["functin"],字串,當前函數的名稱.
3966
	#$result["error"],陣列,錯訊訊息.
3967
	#$result["content"],字串,匯入css樣式的語法.
3968
	#必填參數:
3969
	#$conf["target"],陣列字串,要設置哪些目標的css樣式,若為class樣式則要在名稱開頭補上「.」,也可以使用html標籤與階層關係等.
3970
	$conf["target"]=array("");
3971
	#$conf["headOrTail"],陣列字串,內容是要放在各個$conf["target"]目標元素的前(before)還是後(after).
3972
	$conf["headOrTail"]=array("");
3973
	#$conf["styleAttr"],二維陣列字串,針對每個目標前或後要使用的css樣式屬性陣列.
3974
	$conf["styleAttr"]=array(array(),);
3975
	#$conf["styleVal"],二維陣列字串,針對每個目標前或後要使用的css樣式數值陣列.
3976
	$conf["styleVal"]=array(array(),);
3977
	#$conf["content"],陣列字串,每個目標前或後所要放置的內容.
3978
	$conf["content"]=array();
3979
	#可省略參數:
3980
	#無.
3981
	#參考資料:
3982
	#before=>http://www.w3schools.com/cssref/sel_before.asp
3983
	#after=>http://www.w3schools.com/cssref/sel_after.asp
3984
	#備註:
3985
	#無.
3986
	*/
3987
	public static function headTailContent(&$conf){
3988
 
3989
		#初始化要回傳的結果
3990
		$result=array();
3991
 
3992
		#取得當前執行的函數名稱
3993
		$result["function"]=__FUNCTION__;
3994
 
3995
		#如果沒有參數
3996
		if(func_num_args()==0){
3997
 
3998
			#設置執行失敗
3999
			$result["status"]="false";
4000
 
4001
			#設置執行錯誤訊息
4002
			$result["error"]="函數".$result["function"]."需要參數";
4003
 
4004
			#回傳結果
4005
			return $result;
4006
 
4007
			}#if end
4008
 
4009
		#取得參數
4010
		$result["argu"]=$conf;
4011
 
4012
		#如果 $conf 不為陣列
4013
		if(gettype($conf)!=="array"){
4014
 
4015
			#設置執行失敗
4016
			$result["status"]="false";
4017
 
4018
			#設置執行錯誤訊息
4019
			$result["error"][]="\$conf變數須為陣列形態";
4020
 
4021
			#如果傳入的參數為 null
4022
			if($conf===null){
4023
 
4024
				#設置執行錯誤訊息
4025
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
4026
 
4027
				}#if end
4028
 
4029
			#回傳結果
4030
			return $result;
4031
 
4032
			}#if end
4033
 
4034
		#檢查參數
4035
		#函式說明:
4036
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
4037
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
4038
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
4039
		#$result["function"],當前執行的函式名稱.
4040
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
4041
		#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
4042
		#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
4043
		#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
4044
		#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
4045
		#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
4046
		#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
4047
		#$result["notNeedVar"],字串陣列,多餘的參數名稱.
4048
		#必填寫的參數:
4049
		#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
4050
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
4051
		#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
4052
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("headOrTail","target","styleAttr","styleVal","content");
4053
		#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
4054
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("array","array","array","array","array");
4055
		#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
4056
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
4057
		#可以省略的參數:
4058
		#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
4059
		$conf["variableCheck::checkArguments"]["canBeEmptyString"]="false";
4060
		#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或集合.
4061
		#$conf["skipableVariableCanNotBeEmpty"]=array();
4062
		#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
4063
		#$conf["skipableVariableName"]=array();
4064
		#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
4065
		#$conf["skipableVariableType"]=array();
4066
		#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
4067
		#$conf["skipableVarDefaultValue"]=array("");
4068
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
4069
		$conf["variableCheck::checkArguments"]["arrayCountEqualCheck"][]=array("headOrTail","target","styleAttr","styleVal","content");
4070
		#參考資料來源:
4071
		#array_keys=>http://php.net/manual/en/function.array-keys.php
4072
		$checkArguments=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
4073
		unset($conf["variableCheck::checkArguments"]);
4074
 
4075
		#如果檢查參數失敗
4076
		if($checkArguments["status"]==="false"){
4077
 
4078
			#設置執行不正常
4079
			$result["status"]="false";
4080
 
4081
			#設置執行錯誤
4082
			$result["error"]=$checkArguments;
4083
 
4084
			#回傳結果
4085
			return $result;
4086
 
4087
			}#if end
4088
 
4089
		#如果檢查參數不通過
4090
		if($checkArguments["passed"]==="false"){
4091
 
4092
			#設置執行不正常
4093
			$result["status"]="false";
4094
 
4095
			#設置執行錯誤
4096
			$result["error"]=$checkArguments;
4097
 
4098
			#回傳結果
4099
			return $result;
4100
 
4101
			}#if end
4102
 
4103
		#如果要套用的目標不存在
4104
		if(count($conf["headOrTail"])<1 || count($conf["target"])<1 || count($conf["styleAttr"])<1 || count($conf["styleVal"])<1 ){
4105
 
4106
			#設置執行不正常
4107
			$result["status"]="false";
4108
 
4109
			#設置執行錯誤
4110
			$result["error"][]="參數 headOrTail, target, styleAttr, styleVal 必須要有元素存在";
4111
 
4112
			#回傳結果
4113
			return $result;
4114
 
4115
			}#if end
4116
 
4117
		#初始化要回傳的語法
4118
		$result["content"]="";
4119
 
4120
		#針對每個 $conf["target"]
4121
		for($i=0;$i<count($conf["target"]);$i++){
4122
 
4123
			#初始化要套用的目標與::after::或before
4124
			$target=$conf["target"][$i]."::".$conf["headOrTail"][$i];
4125
 
4126
			#初始化要使用的樣式屬性
4127
			$styleAttr=array("content");
4128
 
4129
			#合併屬性
4130
			#函式說明:
4131
			#將多個一維陣列串聯起來,key從0開始排序.
4132
			#回傳的結果:
4133
			#$result["status"],"true"表執行正常,"false"代表執行不正常.
4134
			#$result["error"],錯誤訊息陣列.
4135
			#$result["function"],當前執行的函數.
4136
			#$result["content"],合併好的一維陣列.
4137
			#必填的參數
4138
			$conf["arrays::mergeArray"]["inputArray"]=array($styleAttr,$conf["styleAttr"][$i]);#要合併的一維陣列變數,例如:=array($array1,$array2);
4139
			$styleAttr=arrays::mergeArray($conf["arrays::mergeArray"]);
4140
			unset($conf["arrays::mergeArray"]);
4141
 
4142
			#如果合併陣列失敗
4143
			if($styleAttr["status"]==="false"){
4144
 
4145
				#設置執行不正常
4146
				$result["status"]="false";
4147
 
4148
				#設置執行錯誤
4149
				$result["error"]=$styleAttr;
4150
 
4151
				#回傳結果
4152
				return $result;
4153
 
4154
				}#if end
4155
 
4156
			#初始化要使用的樣式屬性值
4157
			$styleVal=array("\"".$conf["content"][$i]."\"");
4158
 
4159
			#合併屬性值
4160
			#函式說明:
4161
			#將多個一維陣列串聯起來,key從0開始排序.
4162
			#回傳的結果:
4163
			#$result["status"],"true"表執行正常,"false"代表執行不正常.
4164
			#$result["error"],錯誤訊息陣列.
4165
			#$result["function"],當前執行的函數.
4166
			#$result["content"],合併好的一維陣列.
4167
			#必填的參數
4168
			$conf["arrays::mergeArray"]["inputArray"]=array($styleVal,$conf["styleVal"][$i]);#要合併的一維陣列變數,例如:=array($array1,$array2);
4169
			$styleVal=arrays::mergeArray($conf["arrays::mergeArray"]);
4170
			unset($conf["arrays::mergeArray"]);
4171
 
4172
			#如果合併陣列失敗
4173
			if($styleVal["status"]==="false"){
4174
 
4175
				#設置執行不正常
4176
				$result["status"]="false";
4177
 
4178
				#設置執行錯誤
4179
				$result["error"]=$styleVal;
4180
 
4181
				#回傳結果
4182
				return $result;
4183
 
4184
				}#if end
4185
 
4186
			#建立css樣式
4187
			#函式說明:
4188
			#創建針對html標籤的立即css樣式或限定套用類型的css樣式.
4189
			#回傳的結果:
4190
			#$result["status"],執行是否正常,"true"代表正常;"false"代表不正常.
4191
			#$result["error"],涵式錯誤訊息陣列
4192
			#$result["content"],css語法
4193
			#$result["function"],當前執行的函式名稱.
4194
			#必填的參數:
4195
			#$conf["htmlTagName"],字串陣列,為多個要套用樣式的html標籤名稱,若有階層請用「>」表示,ex:「a:hover」代表在<a></a>上滑過去時的樣式;若有從上而下的層級關係,則請用「>」表示,ex:「div>span>img」,就是針對有div標籤裡面的span標籤裡面的img標籤內容的樣式;也可以針對使用特定類別的html標籤來套用css樣式,ex:「div.pink」,就是針對套用pink類別的div標籤來套用css樣式.
4196
			$conf["css::createApplyCssStyle"]["htmlTagName"]=array($target);
4197
			#$conf["attributes"],字串陣列,為屬性名稱
4198
			$conf["css::createApplyCssStyle"]["attributes"]=$styleAttr["content"];
4199
			#$conf["content"],字串陣列,為屬性值
4200
			$conf["css::createApplyCssStyle"]["content"]=$styleVal["content"];
4201
			$createApplyCssStyle=css::createApplyCssStyle($conf["css::createApplyCssStyle"]);
4202
			unset($conf["css::createApplyCssStyle"]);
4203
 
4204
			#如果建立立即套用的css樣式失敗
4205
			if($createApplyCssStyle["status"]==="false"){
4206
 
4207
				#設置執行不正常
4208
				$result["status"]="false";
4209
 
4210
				#設置執行錯誤
4211
				$result["error"]=$createApplyCssStyle;
4212
 
4213
				#回傳結果
4214
				return $result;
4215
 
4216
				}#if end
4217
 
4218
			#串接立即套用的css樣式
4219
			$result["content"]=$result["content"].$createApplyCssStyle["content"];
4220
 
4221
			}#for end
4222
 
4223
		#設置執行正常
4224
		$result["status"]="true";
4225
 
4226
		#回傳結果
4227
		return $result;
4228
 
4229
		}#function headContent end
4230
 
4231
	/*
4232
	#函式說明:
4233
	#建立rwd的置頂menu,橫向span選單遇到寬度不足會變成div選單,其中第一個元素爲Logo,其他元素預設要隱藏.
4234
	#回傳結果:
4235
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
4236
	#$result["error"],錯誤訊息.
4237
	#$result["function"],當前執行的函數名稱.
4238
	#$result["content"],語法.
4239
	#必填參數:
4240
	#$conf["firstEleId"],字串,選單的擡頭元素id.
4241
	$conf["firstEleId"]="";
4242
	#$conf["otherEleClass"],字串,除擡頭選單外項目的共同類別名稱.
4243
	$conf["otherEleClass"]="";
4244
	#$conf["menuHeight"],字串,選單的高度,建議比擡頭元素高.
4245
	$conf["menuHeight"]="";
4246
	#$conf["content"],字串陣列,要放置的menu span元素,其中第一個元素爲Logo.
4247
	$conf["content"]=array();
4248
	#$conf["width"],字串,小於多少寬度要從span選單變成div選單,單位爲px,建議不要小於550px.
4249
	$conf["width"]="";
4250
	#可省略參數:
4251
	#$conf["between"],字串,宣單項目之間要相隔多少距離,$conf["width"],單位爲px.
4252
	#$conf["between"]="";
4253
	#$conf["top"],字串,選單項目距離上部的距離,預設不指定,單位爲px.
4254
	#$conf["top"]=""; 
4255
	#$conf["bgColor"],字串,選單的背景顏色,預設爲"#FFFFFF".
4256
	#$conf["bgColor"]="";
4257
	#參考資料:
4258
	#無.
4259
	#備註:
4260
	#無.
4261
	*/
4262
	public static function rwdMenu(&$conf){
4263
 
4264
		#初始化要回傳的結果
4265
		$result=array();
4266
 
4267
		#取得當前執行的函數名稱
4268
		$result["function"]=__FUNCTION__;
4269
 
4270
		#如果沒有參數
4271
		if(func_num_args()==0){
4272
 
4273
			#設置執行失敗
4274
			$result["status"]="false";
4275
 
4276
			#設置執行錯誤訊息
4277
			$result["error"]="函數".$result["function"]."需要參數";
4278
 
4279
			#回傳結果
4280
			return $result;
4281
 
4282
			}#if end
4283
 
4284
		#取得參數
4285
		$result["argu"]=$conf;
4286
 
4287
		#如果 $conf 不為陣列
4288
		if(gettype($conf)!=="array"){
4289
 
4290
			#設置執行失敗
4291
			$result["status"]="false";
4292
 
4293
			#設置執行錯誤訊息
4294
			$result["error"][]="\$conf變數須為陣列形態";
4295
 
4296
			#如果傳入的參數為 null
4297
			if($conf===null){
4298
 
4299
				#設置執行錯誤訊息
4300
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
4301
 
4302
				}#if end
4303
 
4304
			#回傳結果
4305
			return $result;
4306
 
4307
			}#if end
4308
 
4309
		#檢查參數
4310
		#函式說明:
4311
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
4312
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
4313
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
4314
		#$result["function"],當前執行的函式名稱.
4315
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
4316
		#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
4317
		#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
4318
		#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
4319
		#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
4320
		#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
4321
		#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
4322
		#$result["notNeedVar"],字串陣列,多餘的參數名稱.
4323
		#必填寫的參數:
4324
		#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
4325
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
4326
		#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
4327
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("firstEleId","otherEleClass","menuHeight","content","width");
4328
		#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
4329
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("string","string","string","array","string");
4330
		#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
4331
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
4332
		#可以省略的參數:
4333
		#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
4334
		$conf["variableCheck::checkArguments"]["canBeEmptyString"]="false";
4335
		#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或集合.
4336
		$conf["variableCheck::checkArguments"]["skipableVariableCanNotBeEmpty"]=array("width","top","bgColor","between");
4337
		#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
4338
		$conf["variableCheck::checkArguments"]["skipableVariableName"]=array("width","top","bgColor","between");
4339
		#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
4340
		$conf["variableCheck::checkArguments"]["skipableVariableType"]=array("string","string","string","string");
4341
		#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
4342
		$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"]=array(null,null,"#FFFFFF",null);
4343
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
4344
		#$conf["variableCheck::checkArguments"]["arrayCountEqualCheck"][]=array("headOrTail","target","styleAttr","styleVal","content");
4345
		#參考資料來源:
4346
		#array_keys=>http://php.net/manual/en/function.array-keys.php
4347
		$checkArguments=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
4348
		unset($conf["variableCheck::checkArguments"]);
4349
 
4350
		#如果檢查參數失敗
4351
		if($checkArguments["status"]==="false"){
4352
 
4353
			#設置執行不正常
4354
			$result["status"]="false";
4355
 
4356
			#設置執行錯誤
4357
			$result["error"]=$checkArguments;
4358
 
4359
			#回傳結果
4360
			return $result;
4361
 
4362
			}#if end
4363
 
4364
		#如果檢查參數不通過
4365
		if($checkArguments["passed"]==="false"){
4366
 
4367
			#設置執行不正常
4368
			$result["status"]="false";
4369
 
4370
			#設置執行錯誤
4371
			$result["error"]=$checkArguments;
4372
 
4373
			#回傳結果
4374
			return $result;
4375
 
4376
			}#if end
4377
 
4378
		#初始化要回傳的語法
4379
		$result["content"]="";
4380
 
4381
		#寬度小於 $conf["width"] 要設置 inline 的 logo
4382
		#函式說明:
4383
		#響應式css樣式,依據瀏覽器的環境(寬度,高度...),使用指定的css樣式
4384
		#回傳結果:
4385
		#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
4386
		#$result["functin"],字串,當前函數的名稱.
4387
		#$result["error"],陣列,錯訊訊息.
4388
		#$result["content"],字串,匯入css樣式的語法.
4389
		#必填參數:
4390
		$conf["css::rwd"]["conName"]=array("max-width");
4391
		#$conf["conVal"],陣列字串,判斷的條件數值陣列,可以為"100px"...
4392
		$conf["css::rwd"]["conVal"]=array($conf["width"]);
4393
		#$conf["target"],陣列字串,要設置哪些目標的css樣式,若為class樣式則要在名稱開頭補上「.」,也可以使用html標籤與階層關係等.
4394
		$conf["css::rwd"]["target"]=array("#".$conf["firstEleId"]);
4395
		#conf["styleAttr"],二維陣列字串,針對每個$conf["target"]要使用的css樣式屬性陣列.
4396
		$conf["css::rwd"]["styleAttr"]=array(array("display"));
4397
		#$conf["styleVal"],二維陣列字串,針對每個$conf["target"]要使用的css樣式數值陣列.
4398
		$conf["css::rwd"]["styleVal"]=array(array("block"));
4399
		$rwd=css::rwd($conf["css::rwd"]);
4400
		unset($conf["css::rwd"]);
4401
 
4402
		#如果建立rwd區塊失敗
4403
		if($rwd["status"]==="false"){
4404
 
4405
			#設置執行不正常
4406
			$result["status"]="false";
4407
 
4408
			#設置執行錯誤
4409
			$result["error"]=$rwd;
4410
 
4411
			#回傳結果
4412
			return $result;
4413
 
4414
			}#if end
4415
 
4416
		#取得 css 語法
4417
		$result["content"]=$result["content"].$rwd["content"];	
4418
 
4419
		#寬度大於 $conf["width"]px logo 要 inline
4420
		#函式說明:
4421
		#響應式css樣式,依據瀏覽器的環境(寬度,高度...),使用指定的css樣式
4422
		#回傳結果:
4423
		#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
4424
		#$result["functin"],字串,當前函數的名稱.
4425
		#$result["error"],陣列,錯訊訊息.
4426
		#$result["content"],字串,匯入css樣式的語法.
4427
		#必填參數:
4428
		$conf["css::rwd"]["conName"]=array("min-width");
4429
		#$conf["conVal"],陣列字串,判斷的條件數值陣列,可以為"100px"...
4430
		$conf["css::rwd"]["conVal"]=array($conf["width"]);
4431
		#$conf["target"],陣列字串,要設置哪些目標的css樣式,若為class樣式則要在名稱開頭補上「.」,也可以使用html標籤與階層關係等.
4432
		$conf["css::rwd"]["target"]=array("#".$conf["firstEleId"]);
4433
		#conf["styleAttr"],二維陣列字串,針對每個$conf["target"]要使用的css樣式屬性陣列.
4434
		$conf["css::rwd"]["styleAttr"]=array(array("display"));
4435
		#$conf["styleVal"],二維陣列字串,針對每個$conf["target"]要使用的css樣式數值陣列.
4436
		$conf["css::rwd"]["styleVal"]=array(array("inline"));
4437
		$rwd=css::rwd($conf["css::rwd"]);
4438
		unset($conf["css::rwd"]);
4439
 
4440
		#如果建立rwd區塊失敗
4441
		if($rwd["status"]==="false"){
4442
 
4443
			#設置執行不正常
4444
			$result["status"]="false";
4445
 
4446
			#設置執行錯誤
4447
			$result["error"]=$rwd;
4448
 
4449
			#回傳結果
4450
			return $result;
4451
 
4452
			}#if end
4453
 
4454
		#取得 css 語法
4455
		$result["content"]=$result["content"].$rwd["content"];	
4456
 
4457
		#寬度大於 $conf["width"] 要設置menu類別左邊位移.
4458
		#涵式說明
4459
		#響應式css樣式,依據瀏覽器的環境(寬度,高度...),使用指定的css樣式
4460
		#回傳結果:
4461
		#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
4462
		#$result["functin"],字串,當前函數的名稱.
4463
		#$result["error"],陣列,錯訊訊息.
4464
		#$result["content"],字串,匯入css樣式的語法.
4465
		#必填參數:
4466
		$conf["css::rwd"]["conName"]=array("min-width");
4467
		#$conf["conVal"],陣列字串,判斷的條件數值陣列,可以為"100px"...
4468
		$conf["css::rwd"]["conVal"]=array($conf["width"]);
4469
		#$conf["target"],陣列字串,要設置哪些目標的css樣式,若為class樣式則要在名稱開頭補上「.」,也可以使用html標籤與階層關係等.
4470
		$conf["css::rwd"]["target"]=array(".".$conf["otherEleClass"]);
4471
		#conf["styleAttr"],二維陣列字串,針對每個$conf["target"]要使用的css樣式屬性陣列.
4472
		$conf["css::rwd"]["styleAttr"]=array(array("display","position"));
4473
		#$conf["styleVal"],二維陣列字串,針對每個$conf["target"]要使用的css樣式數值陣列.
4474
		$conf["css::rwd"]["styleVal"]=array(array("inline","relative"));
4475
 
4476
		#如果有設置 $conf["between"]
4477
		if(isset($conf["between"])){
4478
 
4479
			#設置 margin-left 屬性
4480
			$conf["css::rwd"]["styleAttr"][0][]="margin-left";
4481
 
4482
			#設置對應的數值
4483
			$conf["css::rwd"]["styleVal"][0][]=$conf["between"];
4484
 
4485
			}#if end
4486
 
4487
		#如果有設置 $conf["top"]
4488
		if(isset($conf["top"])){
4489
 
4490
			#設置 top 屬性
4491
			$conf["css::rwd"]["styleAttr"][0][]="top";
4492
 
4493
			#設置對應的數值
4494
			$conf["css::rwd"]["styleVal"][0][]=$conf["top"];
4495
 
4496
			}#if end
4497
 
4498
		$rwd=css::rwd($conf["css::rwd"]);
4499
		unset($conf["css::rwd"]);
4500
 
4501
		#如果建立rwd區塊失敗
4502
		if($rwd["status"]==="false"){
4503
 
4504
			#設置執行不正常
4505
			$result["status"]="false";
4506
 
4507
			#設置執行錯誤
4508
			$result["error"]=$rwd;
4509
 
4510
			#回傳結果
4511
			return $result;
4512
 
4513
			}#if end	
4514
 
4515
		#取得 css 語法
4516
		$result["content"]=$result["content"].$rwd["content"];	
4517
 
4518
		#寬度小於 $conf["width"] 要設置menu類別爲不顯示.
4519
		#涵式說明
4520
		#響應式css樣式,依據瀏覽器的環境(寬度,高度...),使用指定的css樣式
4521
		#回傳結果:
4522
		#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
4523
		#$result["functin"],字串,當前函數的名稱.
4524
		#$result["error"],陣列,錯訊訊息.
4525
		#$result["content"],字串,匯入css樣式的語法.
4526
		#必填參數:
4527
		$conf["css::rwd"]["conName"]=array("max-width");
4528
		#$conf["conVal"],陣列字串,判斷的條件數值陣列,可以為"100px"...
4529
		$conf["css::rwd"]["conVal"]=array($conf["width"]);
4530
		#$conf["target"],陣列字串,要設置哪些目標的css樣式,若為class樣式則要在名稱開頭補上「.」,也可以使用html標籤與階層關係等.
4531
		$conf["css::rwd"]["target"]=array(".".$conf["otherEleClass"]);
4532
		#conf["styleAttr"],二維陣列字串,針對每個$conf["target"]要使用的css樣式屬性陣列.
4533
		$conf["css::rwd"]["styleAttr"]=array(array("display","background-color"));
4534
		#$conf["styleVal"],二維陣列字串,針對每個$conf["target"]要使用的css樣式數值陣列.
4535
		$conf["css::rwd"]["styleVal"]=array(array("none",$conf["bgColor"]));
4536
		$rwd=css::rwd($conf["css::rwd"]);
4537
		unset($conf["css::rwd"]);
4538
 
4539
		#如果建立rwd區塊失敗
4540
		if($rwd["status"]==="false"){
4541
 
4542
			#設置執行不正常
4543
			$result["status"]="false";
4544
 
4545
			#設置執行錯誤
4546
			$result["error"]=$rwd;
4547
 
4548
			#回傳結果
4549
			return $result;
4550
 
4551
			}#if end	
4552
 
4553
		#取得 css 語法
4554
		$result["content"]=$result["content"].$rwd["content"];	
4555
 
4556
		#滑到與 focus a 時的樣式
4557
		#函式說明:
4558
		#創建針對html標籤的立即css樣式或限定套用類型的css樣式.
4559
		#回傳的結果:
4560
		#$result["status"],執行是否正常,"true"代表正常;"false"代表不正常.
4561
		#$result["error"],涵式錯誤訊息陣列
4562
		#$result["content"],css語法
4563
		#$result["function"],當前執行的函式名稱.
4564
		#$result["argu"],所使用的參數.
4565
		#必填的參數:
4566
		#$conf["htmlTagName"],字串陣列,為多個要套用樣式的html標籤名稱,若有階層請用「>」表示,ex:「a:hover」代表在<a></a>上滑過去時的樣式;若有從上而下的層級關係,則請用「>」表示,ex:「div>span>img」,就是針對有div標籤裡面的span標籤裡面的img標籤內容的樣式;也可以針對使用特定類別的html標籤來套用css樣式,ex:「div.pink」,就是針對套用pink類別的div標籤來套用css樣式;可以指定擁有特定屬性的標籤與class的元素來套用css樣式,ex:「div['data-selected=true'].specifyClassName」。
4567
		$conf["css::createApplyCssStyle"]["htmlTagName"]=array("a:hover","a:focus");
4568
		#$conf["attributes"],字串陣列,為屬性名稱
4569
		$conf["css::createApplyCssStyle"]["attributes"]=array("color","text-decoration");
4570
		#$conf["content"],字串陣列,為屬性值
4571
		$conf["css::createApplyCssStyle"]["content"]=array("black","none");
4572
		$createApplyCssStyle=css::createApplyCssStyle($conf["css::createApplyCssStyle"]);
4573
		unset($conf["css::createApplyCssStyle"]);
4574
 
4575
		#如果建立失敗
4576
		if($createApplyCssStyle["status"]==="false"){
4577
 
4578
			#設置執行不正常
4579
			$result["status"]="false";
4580
 
4581
			#設置執行錯誤
4582
			$result["error"]=$createApplyCssStyle;
4583
 
4584
			#回傳結果
4585
			return $result;
4586
 
4587
			}#if end
4588
 
4589
		#取得 css 語法
4590
		$result["content"]=$result["content"].$createApplyCssStyle["content"];
4591
 
4592
		#menu bar
4593
		#函式說明:
4594
		#<div>區塊,裡面可以指定css的class樣式,可以指定提示文字.
4595
		#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
4596
		#$result["functin"],字串,當前函數的名稱.
4597
		#$result["error"],陣列,錯訊訊息.
4598
		#$result["content"],字串,含有<div>標籤的內容.
4599
		#必填參數:
4600
		#$conf["contentArray"],字串陣列,要放入的內容陣列.
4601
		$conf["css::divSection"]["contentArray"]=$conf["content"];
4602
		#可省略參數
4603
		#$conf["id"],字串,div區塊的id.
4604
		#$conf["id"]="";
4605
		#$conf["styleAttr"],字串陣列,給div區段要套用的style樣式屬性.
4606
		$conf["css::divSection"]["styleAttr"]=array("position","top","height","background-color","width");
4607
		#$conf["styleVal"],字串陣列,給div區段要套用的style樣式數值.
4608
		$conf["css::divSection"]["styleVal"]=array("fixed","0px",$conf["menuHeight"],$conf["bgColor"],"100vw");
4609
		#$conf["class"],字串,div區段要套用的css樣式.
4610
		#$conf["class"]="";
4611
		#$conf["title"],陣列,滑鼠移到上面時要顯示的內容,每個元素代表一列內容.
4612
		#$conf["title"]=array();
4613
		#$conf["oneScreenSize"],字串,div區塊是否要占一個螢幕的大小,預設為"false"不設定,"true"為設定成一個螢幕的大小.
4614
		#$conf["oneScreenSize"]="false";
4615
		#$conf["textAlignCenter"],字串,div區塊是否要置中,預設為$conf["oneScreenSize"]的值,"false"為不置中,"true"代表要置中.
4616
		$conf["css::divSection"]["textAlignCenter"]="true";
4617
		#$conf["data"],字串陣列,每個要設置的屬性data內容,例如array("option1"=>"A","option2"=>"B"),預設不使用.
4618
		#$conf["data"]=array();
4619
		$divSection=css::divSection($conf["css::divSection"]);
4620
		unset($conf["css::divSection"]);
4621
 
4622
		#如果建立div區塊失敗
4623
		if($divSection["status"]==="false"){
4624
 
4625
			#設置執行不正常
4626
			$result["status"]="false";
4627
 
4628
			#設置執行錯誤
4629
			$result["error"]=$divSection;
4630
 
4631
			#回傳結果
4632
			return $result;
4633
 
4634
			}#if end
4635
 
4636
		#$conf["firstEleId"],字串,選單的擡頭元素id.
4637
		#函式說明:
4638
		#將要執行的script語法透過該函式執行(會在程式外層用<script></script>包起來).
4639
		#回傳結果:
4640
		#$result["status"],執行是否正常,"true"為正常,"false"為不正常.
4641
		#$result["error"],錯誤訊息陣列
4642
		#$result["function"],當前執行的函數名稱
4643
		#$result["content"],要執行的javaScript語法
4644
		#必填的參數:
4645
		#$conf["script"],字串,要執行的javaScript語法.
4646
		$conf["javaScript::toScript"]["script"]=
4647
		"
4648
		//get logo element
4649
		var logo=document.getElementById('".$conf["firstEleId"]."');
4650
 
4651
		//click logo trigger event
4652
		logo.addEventListener('click',function(){
4653
 
4654
			//小畫面才要顯示
4655
			if(document.body.getBoundingClientRect().width<".(int)($conf["width"])."){
4656
 
4657
				//get menu class
4658
				var menus=document.getElementsByClassName('".$conf["otherEleClass"]."');
4659
 
4660
				//隱藏option
4661
				if(menus[0].style.display==='block' && menus[0].style.marginLeft==='unset'){
4662
 
4663
					//each option
4664
					for(var i=0;i<menus.length;i++){
4665
 
4666
						//restore menu style
4667
						menus[i].style.display='';
4668
						menus[i].style.marginLeft='';
4669
 
4670
						}//for end
4671
 
4672
					}//if end
4673
 
4674
				//反之要顯示選項
4675
				else{
4676
 
4677
					//each option
4678
					for(var i=0;i<menus.length;i++){
4679
 
4680
						//顯現option
4681
						menus[i].style.display='block';
4682
						menus[i].style.marginLeft='unset';
4683
 
4684
						}//for end
4685
 
4686
					}//else end
4687
 
4688
				}//if end
4689
 
4690
			});//click evnet end
4691
 
4692
		//當視窗大小改變,要觸發function
4693
		window.addEventListener('resize',function(){
4694
 
4695
			//debug
4696
			if(window.qbpwcf.bug){
4697
 
4698
				console.log(document.body.getBoundingClientRect().width);
4699
 
4700
				}//if end
4701
 
4702
			//get menu class
4703
			var menus=document.getElementsByClassName('".$conf["otherEleClass"]."');
4704
 
4705
			//each option
4706
			for(var i=0;i<menus.length;i++){
4707
 
4708
				//restore menu style
4709
				menus[i].style.display='';
4710
				menus[i].style.marginLeft='';
4711
 
4712
				}//for end
4713
 
4714
			});//resize event end
4715
 
4716
		//初始畫面若寬於Logo+選項
4717
		if(document.body.getBoundingClientRect().width>=".(int)($conf["width"])."){
4718
 
4719
			//get menu class
4720
			var menus=document.getElementsByClassName('".$conf["otherEleClass"]."');
4721
 
4722
			//each option
4723
			for(var i=0;i<menus.length;i++){
4724
 
4725
				//restore menu style
4726
				menus[i].style.display='';
4727
				menus[i].style.marginLeft='';
4728
 
4729
				}//for end
4730
 
4731
			}//if end
4732
 
4733
		";
4734
		#可省略參數:
4735
		#$conf["onReady"],字串,是否要在網頁完全載入後再執行,"false"為不等載入完就先執行,預設為"true"要等載入完再執行.
4736
		#$conf["onReady"]="true";
4737
		#$conf["globalJs"],字串陣列,為要放入<script>標籤的js全域變數.
4738
		#$conf["globalJs"]=array();
4739
		#$conf["jsFunciton"],字串陣列,為要放入<script>標籤的js函數.
4740
		#$conf["jsFunciton"]=array();
4741
		#參考資料:
4742
		#http://stackoverflow.com/questions/9899372/pure-javascript-equivalent-to-jquerys-ready-how-to-call-a-function-when-the
4743
		$toScript=javaScript::toScript($conf["javaScript::toScript"]);
4744
		unset($conf["javaScript::toScript"]);
4745
 
4746
		#如果建立div區塊失敗
4747
		if($toScript["status"]==="false"){
4748
 
4749
			#設置執行不正常
4750
			$result["status"]="false";
4751
 
4752
			#設置執行錯誤
4753
			$result["error"]=$toScript;
4754
 
4755
			#回傳結果
4756
			return $result;
4757
 
4758
			}#if end
4759
 
4760
		#取得 script 語法
4761
		$result["content"]=$result["content"].$toScript["content"];
4762
 
4763
		#設置執行正常 
4764
		$result["status"]="true";
4765
 
4766
		#取得 html 語法
4767
		$result["content"]=$result["content"].$divSection["content"];
4768
 
4769
		#回傳結果
4770
		return $result;
4771
 
4772
		}#function rwdMenu end
4773
 
4774
	/*
4775
	#函式說明:
4776
	#將畫面分成數欄
4777
	#回傳結果:
4778
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
4779
	#$result["error"],錯誤訊息.
4780
	#$result["function"],當前執行的函數名稱.
4781
	#$result["content"],語法.
4782
	#$result["argu"],使用的參數.
4783
	#必填參數:
4784
	#$conf["sections"],字串,要分成幾個欄位.
4785
	$conf["sections"]="";
4786
	#$conf["content"],字串陣列,每個欄位要放置的內容.
4787
	$conf["content"]=array();
4788
	#可省略參數:
4789
	#$conf["height"],字串,區塊的高度,預設為100vh.
4790
	#$conf["height"]="100vh";
4791
	#參考資料:
4792
	#無.
4793
	#備註:
4794
	#無.
4795
	*/
4796
	public static function cols(&$conf=array()){
4797
 
4798
		#初始化要回傳的結果
4799
		$result=array();
4800
 
4801
		#取得當前執行的函數名稱
4802
		$result["function"]=__FUNCTION__;
4803
 
4804
		#如果沒有參數
4805
		if(func_num_args()==0){
4806
 
4807
			#設置執行失敗
4808
			$result["status"]="false";
4809
 
4810
			#設置執行錯誤訊息
4811
			$result["error"]="函數".$result["function"]."需要參數";
4812
 
4813
			#回傳結果
4814
			return $result;
4815
 
4816
			}#if end
4817
 
4818
		#取得參數
4819
		$result["argu"]=$conf;
4820
 
4821
		#如果 $conf 不為陣列
4822
		if(gettype($conf)!=="array"){
4823
 
4824
			#設置執行失敗
4825
			$result["status"]="false";
4826
 
4827
			#設置執行錯誤訊息
4828
			$result["error"][]="\$conf變數須為陣列形態";
4829
 
4830
			#如果傳入的參數為 null
4831
			if($conf===null){
4832
 
4833
				#設置執行錯誤訊息
4834
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
4835
 
4836
				}#if end
4837
 
4838
			#回傳結果
4839
			return $result;
4840
 
4841
			}#if end
4842
 
4843
		#檢查參數
4844
		#函式說明:
4845
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
4846
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
4847
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
4848
		#$result["function"],當前執行的函式名稱.
4849
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
4850
		#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
4851
		#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
4852
		#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
4853
		#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
4854
		#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
4855
		#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
4856
		#$result["notNeedVar"],字串陣列,多餘的參數名稱.
4857
		#必填寫的參數:
4858
		#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
4859
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
4860
		#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
4861
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("sections","content");
4862
		#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
4863
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("string","array");
4864
		#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
4865
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
4866
		#可以省略的參數:
4867
		#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
4868
		$conf["variableCheck::checkArguments"]["canBeEmptyString"]="false";
4869
		#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或集合.
4870
		$conf["variableCheck::checkArguments"]["skipableVariableCanNotBeEmpty"]=array("height");
4871
		#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
4872
		$conf["variableCheck::checkArguments"]["skipableVariableName"]=array("height");
4873
		#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
4874
		$conf["variableCheck::checkArguments"]["skipableVariableType"]=array("string");
4875
		#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
4876
		$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"]=array("100vh");
4877
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
4878
		#$conf["variableCheck::checkArguments"]["arrayCountEqualCheck"][]=array("headOrTail","target","styleAttr","styleVal","content");
4879
		#參考資料來源:
4880
		#array_keys=>http://php.net/manual/en/function.array-keys.php
4881
		$checkArguments=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
4882
		unset($conf["variableCheck::checkArguments"]);
4883
 
4884
		#如果檢查參數失敗
4885
		if($checkArguments["status"]==="false"){
4886
 
4887
			#設置執行不正常
4888
			$result["status"]="false";
4889
 
4890
			#設置執行錯誤
4891
			$result["error"]=$checkArguments;
4892
 
4893
			#回傳結果
4894
			return $result;
4895
 
4896
			}#if end
4897
 
4898
		#如果檢查參數不通過
4899
		if($checkArguments["passed"]==="false"){
4900
 
4901
			#設置執行不正常
4902
			$result["status"]="false";
4903
 
4904
			#設置執行錯誤
4905
			$result["error"]=$checkArguments;
4906
 
4907
			#回傳結果
4908
			return $result;
4909
 
4910
			}#if end
4911
 
4912
		#初始化要回傳的語法
4913
		$result["content"]="";
4914
 
4915
		#欄位計數
4916
		$colsc=count($conf["content"]);
4917
 
4918
		#有分成幾個欄位
4919
		foreach($conf["content"] as $index => $col){
4920
 
4921
			#函式說明:
4922
			#<div>區塊,裡面可以指定css的class樣式,可以指定提示文字.
4923
			#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
4924
			#$result["functin"],字串,當前函數的名稱.
4925
			#$result["error"],陣列,錯訊訊息.
4926
			#$result["content"],字串,含有<div>標籤的內容.
4927
			#必填參數:
4928
			#$conf["contentArray"],字串陣列,要放入的內容陣列.
4929
			$conf["css::divSection"]["contentArray"]=array($conf["content"][$index]);
4930
			#可省略參數
4931
			#$conf["id"],字串,div區塊的id.
4932
			#$conf["id"]="";
4933
			#$conf["styleAttr"],字串陣列,給div區段要套用的style樣式屬性.
4934
			$conf["css::divSection"]["styleAttr"]=array("display","width","height");
4935
			#$conf["styleVal"],字串陣列,給div區段要套用的style樣式數值.
4936
			$conf["css::divSection"]["styleVal"]=array("inline-block",(100/$colsc)."%",$conf["height"]);
4937
			#$conf["class"],字串,div區段要套用的css樣式.
4938
			#$conf["class"]="";
4939
			#$conf["title"],陣列,滑鼠移到上面時要顯示的內容,每個元素代表一列內容.
4940
			#$conf["title"]=array();
4941
			#$conf["oneScreenSize"],字串,div區塊是否要占一個螢幕的大小,預設為"false"不設定,"true"為設定成一個螢幕的大小.
4942
			#$conf["oneScreenSize"]="false";
4943
			#$conf["textAlignCenter"],字串,div區塊是否要置中,預設為$conf["oneScreenSize"]的值,"false"為不置中,"true"代表要置中.
4944
			#$conf["textAlignCenter"]="true";
4945
			#$conf["data"],字串陣列,每個要設置的屬性data內容,例如array("option1"=>"A","option2"=>"B"),預設不使用.
4946
			#$conf["data"]=array();
4947
			$divSection=css::divSection($conf["css::divSection"]);
4948
			unset($conf["css::divSection"]);
4949
 
4950
			#如果檢查參數失敗
4951
			if($divSection["status"]==="false"){
4952
 
4953
				#設置執行不正常
4954
				$result["status"]="false";
4955
 
4956
				#設置執行錯誤
4957
				$result["error"]=$divSection;
4958
 
4959
				#回傳結果
4960
				return $result;
4961
 
4962
				}#if end
4963
 
4964
			#串接語法
4965
			$result["content"]=$result["content"].$divSection["content"];
4966
 
4967
			}#foreach end
4968
 
4969
		#設置執行正常
4970
		$result["status"]="true";
4971
 
4972
		#回傳結果
4973
		return $result;
4974
 
4975
		}#function cols end
4976
 
4977
	/*
4978
	#函式說明:
4979
	#建立永遠飄在上頭的選單,且分為左中右三塊,左邊藏東西的icon,中間是到首頁的Logo,右邊也是藏東西的icon.
4980
	#回傳結果:
4981
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
4982
	#$result["error"],錯誤訊息.
4983
	#$result["function"],當前執行的函數名稱.
4984
	#$result["content"],語法.
4985
	#$result["argu"],使用的參數.
4986
	#必填參數:
4987
	#$conf["menuHeight"],字串,選單的高度,建議比擡頭元素高.
4988
	$conf["menuHeight"]="";
4989
	#$conf["content"],字串陣列,要放置的三個項目
4990
	$conf["content"]=array();
4991
	#可省略參數:
4992
	#$conf["style"],二維字串陣列,三個項目的樣式,預設為array(array("text-align:left;"),array("text-align:ceter;"),array("text-align:right"));
4993
	#$conf["style"]=""
4994
	#$conf["top"],字串,項目距離上部的距離,預設不指定,單位爲px.
4995
	#$conf["top"]=""; 
4996
	#$conf["bgColor"],字串,選單的背景顏色,預設爲"#FFFFFF".
4997
	#$conf["bgColor"]="";
4998
	#參考資料:
4999
	#無.
5000
	#備註:
5001
	#建構中...
5002
	*/
5003
	public static function menu3sec(&$conf){
5004
 
5005
 
5006
 
5007
		}#function menu3sec end	
5008
 
5009
	/*
5010
	#函式說明:
5011
	#建立放置多個圖片與文字說明的內容,寬畫面會呈現一列多個圖示,小畫面會一列一個圖示.
5012
	#回傳結果:
5013
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
5014
	#$result["error"],錯誤訊息.
5015
	#$result["function"],當前執行的函數名稱.
5016
	#$result["content"],語法.
5017
	#$result["argu"],使用的參數.
5018
	#必填參數:	
5019
	#$conf["fileArgu"],字串,php變數__FILE__的內容,亦即該檔案在檔案系統的絕對路徑.
5020
	$conf["fileArgu"]=__FILE__;
5021
	#可省略參數:
5022
	#$conf["maxWidth"],字串,小於多少寬度要從span選單變成div選單,單位爲px,預設爲600px.
5023
	#$conf["maxWidth"]="600px";
5024
	#$conf["thinWidth"],字串,畫面寬度小於$conf["maxWidth"]時,會呈現怎麼樣的寬度比例, 預設爲70vw.
5025
	#$conf["thinWidth"]="70vw";
5026
	#$conf["thinHeight"],字串,畫面寬度小於$conf["maxWidth"]時,會呈現怎麼樣的高度比例, 預設爲70vh.
5027
	#$conf["thinHeight"]="70vh";
5028
	#$conf["thinkWidth"],字串,畫面寬度大於$conf["maxWidth"]時,會呈現怎麼樣的寬度比例, 預設爲20vw.
5029
	#$conf["thinkWidth"]="20vw";
5030
	#$conf["thinkHeight"],字串,畫面寬度大於$conf["maxWidth"]時,會呈現怎麼樣的高度比例, 預設爲20vh.
5031
	#$conf["thinkHeight"]=20vh";
5032
	#$conf["imgEleClass"],字串,圖片元素的類別名稱,預設爲"icon_list_img".
5033
	#$conf["imgEleClass"]="icon_list_img";
5034
	#$conf["shellEleClass"],字串,圖片元素與文字說明的外框套用的類別名稱,預設爲"icon_list_div".
5035
	#$conf["shellEleClass"]="icon_list_div";
5036
	#$conf["hoverColor"],字串,移到類別 $conf["shellEleClass"] 裏面要出現的框線顏色,預設爲"#000000".
5037
	#$conf["hoverColor"]="#000000";
5038
	#$conf["hoverWidth"],字串,移到類別 $conf["shellEleClass"] 裏面要出現的框線厚度,預設爲"1px".
5039
	#$conf["hoverWidth"]="1px";
5040
	#$conf["hoverStyle"],字串,移到類別 $conf["shellEleClass"] 裏面要出現的框線樣式,預設爲"solid".
5041
	#$conf["hoverStyle"]="solid";
5042
	#$conf["icon"],字串陣列,要放置的icon字串陣列.
5043
	#$conf["icon"]=array();
5044
	#$conf["comment"],字串陣列,要放置的icon說明文字,預設為"icon".
5045
	#$conf["comment"]=array();
5046
	#$conf["between"],字串,宣單項目之間要相隔多少距離,單位爲px,預設爲25px.
5047
	#$conf["between"]="25px";
5048
	#$conf["bgColor"],字串,背景顏色,預設為#FFFFFF(白色).
5049
	#$conf["bgColor"]="#FFFFFF;
5050
	#$conf["bgImg"],字串,背景圖片網址,若有設置則會取代$conf["bgColor"].
5051
	#$conf["bgImg"]="";
5052
	#參考資料:
5053
	#無.
5054
	#備註:
5055
	#無.
5056
	*/
5057
	public static function rwdIcon(&$conf){
5058
 
5059
		#初始化要回傳的結果
5060
		$result=array();
5061
 
5062
		#取得當前執行的函數名稱
5063
		$result["function"]=__FUNCTION__;
5064
 
5065
		#如果沒有參數
5066
		if(func_num_args()==0){
5067
 
5068
			#設置執行失敗
5069
			$result["status"]="false";
5070
 
5071
			#設置執行錯誤訊息
5072
			$result["error"]="函數".$result["function"]."需要參數";
5073
 
5074
			#回傳結果
5075
			return $result;
5076
 
5077
			}#if end
5078
 
5079
		#取得參數
5080
		$result["argu"]=$conf;
5081
 
5082
		#如果 $conf 不為陣列
5083
		if(gettype($conf)!=="array"){
5084
 
5085
			#設置執行失敗
5086
			$result["status"]="false";
5087
 
5088
			#設置執行錯誤訊息
5089
			$result["error"][]="\$conf變數須為陣列形態";
5090
 
5091
			#如果傳入的參數為 null
5092
			if($conf===null){
5093
 
5094
				#設置執行錯誤訊息
5095
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
5096
 
5097
				}#if end
5098
 
5099
			#回傳結果
5100
			return $result;
5101
 
5102
			}#if end
5103
 
5104
		#檢查參數
5105
		#函式說明:
5106
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
5107
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
5108
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
5109
		#$result["function"],當前執行的函式名稱.
5110
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
5111
		#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
5112
		#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
5113
		#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
5114
		#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
5115
		#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
5116
		#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
5117
		#$result["notNeedVar"],字串陣列,多餘的參數名稱.
5118
		#必填寫的參數:
5119
		#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
5120
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
5121
		#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
5122
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("fileArgu");
5123
		#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
5124
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("string");
5125
		#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
5126
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
5127
		#可以省略的參數:
5128
		#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
5129
		$conf["variableCheck::checkArguments"]["canBeEmptyString"]="false";
5130
		#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或集合.
5131
		$conf["variableCheck::checkArguments"]["skipableVariableCanNotBeEmpty"]=array("maxWidth","thinWidth","thinHeight","thinkWidth","thinkHeight","imgEleClass","shellEleClass","hoverColor","hoverWidth","hoverStyle","icon","comment","between","bgColor","bgImg");
5132
		#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
5133
		$conf["variableCheck::checkArguments"]["skipableVariableName"]=array("maxWidth","thinWidth","thinHeight","thinkWidth","thinkHeight","imgEleClass","shellEleClass","hoverColor","hoverWidth","hoverStyle","icon","comment","between","bgColor","bgImg");
5134
		#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
5135
		$conf["variableCheck::checkArguments"]["skipableVariableType"]=array("string","string","string","string","string","string","string","string","string","string","array","array","string","string","string");
5136
		#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
5137
		$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"]=array("600px","70vw","70vh","20vw","20vh","icon_list_img","icon_list_div","#000000","1px","solid",null,null,"25px","#FFFFFF",null);
5138
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
5139
		$conf["variableCheck::checkArguments"]["arrayCountEqualCheck"][]=array("icon","comment");
5140
		#參考資料來源:
5141
		#array_keys=>http://php.net/manual/en/function.array-keys.php
5142
		$checkArguments=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
5143
		unset($conf["variableCheck::checkArguments"]);
5144
 
5145
		#如果檢查參數失敗
5146
		if($checkArguments["status"]==="false"){
5147
 
5148
			#設置執行不正常
5149
			$result["status"]="false";
5150
 
5151
			#設置執行錯誤
5152
			$result["error"]=$checkArguments;
5153
 
5154
			#回傳結果
5155
			return $result;
5156
 
5157
			}#if end
5158
 
5159
		#如果檢查參數不通過
5160
		if($checkArguments["passed"]==="false"){
5161
 
5162
			#設置執行不正常
5163
			$result["status"]="false";
5164
 
5165
			#設置執行錯誤
5166
			$result["error"]=$checkArguments;
5167
 
5168
			#回傳結果
5169
			return $result;
5170
 
5171
			}#if end
5172
 
5173
		#初始化要回傳的語法
5174
		$result["content"]="";
5175
 
5176
		#如果沒有設置 comment
5177
		if( isset($conf["icon"]) && !isset($conf["comment"]) ){
5178
 
5179
			#針對每個圖示 
5180
			foreach($conf["icon"] as $index => $iconUrl){
5181
 
5182
				#設置預設的 comment
5183
				$conf["comment"][$index]="icon";
5184
 
5185
				}#if end
5186
 
5187
			}#foreach end
5188
 
5189
		#寬度小於 600px 要設置 block 的 product_list
5190
		#函式說明:
5191
		#響應式css樣式,依據瀏覽器的環境(寬度,高度...),使用指定的css樣式
5192
		#回傳結果:
5193
		#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
5194
		#$result["functin"],字串,當前函數的名稱.
5195
		#$result["error"],陣列,錯訊訊息.
5196
		#$result["content"],字串,匯入css樣式的語法.
5197
		#必填參數:
5198
		$conf["css::rwd"]["conName"]=array("max-width");
5199
		#$conf["conVal"],陣列字串,判斷的條件數值陣列,可以為"100px"...
5200
		$conf["css::rwd"]["conVal"]=array($conf["maxWidth"]);
5201
		#$conf["target"],陣列字串,要設置哪些目標的css樣式,若為class樣式則要在名稱開頭補上「.」,也可以使用html標籤與階層關係等.
5202
		$conf["css::rwd"]["target"]=array(".".$conf["shellEleClass"],".".$conf["imgEleClass"]);
5203
		#conf["styleAttr"],二維陣列字串,針對每個$conf["target"]要使用的css樣式屬性陣列.
5204
		$conf["css::rwd"]["styleAttr"]=array(array("display"),array("width","height"));
5205
		#$conf["styleVal"],二維陣列字串,針對每個$conf["target"]要使用的css樣式數值陣列.
5206
		$conf["css::rwd"]["styleVal"]=array(array("block"),array($conf["thinWidth"],$conf["thinHeight"]));
5207
		$rwd=css::rwd($conf["css::rwd"]);
5208
		unset($conf["css::rwd"]);
5209
 
5210
		#如果建立rwd區塊失敗
5211
		if($rwd["status"]==="false"){
5212
 
5213
			#設置錯誤訊息
5214
			$result["error"]=$rwd;
5215
 
5216
			#設置錯誤識別
5217
			$result["status"]="false";
5218
 
5219
			#結束運行
5220
			return $result;
5221
 
5222
			}#if end
5223
 
5224
		#儲存 css 語法
5225
		$result["content"]=$result["content"].$rwd["content"];	
5226
 
5227
		#寬度大於 600px 要設置 inline-block 的 product_list
5228
		#函式說明:
5229
		#響應式css樣式,依據瀏覽器的環境(寬度,高度...),使用指定的css樣式
5230
		#回傳結果:
5231
		#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
5232
		#$result["functin"],字串,當前函數的名稱.
5233
		#$result["error"],陣列,錯訊訊息.
5234
		#$result["content"],字串,匯入css樣式的語法.
5235
		#必填參數:
5236
		$conf["css::rwd"]["conName"]=array("min-width");
5237
		#$conf["conVal"],陣列字串,判斷的條件數值陣列,可以為"100px"...
5238
		$conf["css::rwd"]["conVal"]=array($conf["maxWidth"]);
5239
		#$conf["target"],陣列字串,要設置哪些目標的css樣式,若為class樣式則要在名稱開頭補上「.」,也可以使用html標籤與階層關係等.
5240
		$conf["css::rwd"]["target"]=array(".".$conf["shellEleClass"],".".$conf["imgEleClass"],".".$conf["shellEleClass"]." > div");
5241
		#conf["styleAttr"],二維陣列字串,針對每個$conf["target"]要使用的css樣式屬性陣列.
5242
		$conf["css::rwd"]["styleAttr"]=array(array("display"),array("width","height"),array("width"));
5243
		#$conf["styleVal"],二維陣列字串,針對每個$conf["target"]要使用的css樣式數值陣列.
5244
		$conf["css::rwd"]["styleVal"]=array(array("inline-block"),array($conf["thinkWidth"],$conf["thinkHeight"]),array($conf["thinkWidth"]));
5245
		$rwd=css::rwd($conf["css::rwd"]);
5246
		unset($conf["css::rwd"]);
5247
 
5248
		#如果建立rwd區塊失敗
5249
		if($rwd["status"]==="false"){
5250
 
5251
			#設置錯誤訊息
5252
			$result["error"]=$rwd;
5253
 
5254
			#設置錯誤識別
5255
			$result["status"]="false";
5256
 
5257
			#結束運行
5258
			return $result;
5259
 
5260
			}#if end
5261
 
5262
		#儲存 css 語法
5263
		$result["content"]=$result["content"].$rwd["content"];
5264
 
5265
		#建立 product_list_div hover 時會出現線條的樣式
5266
		#函式說明:
5267
		#創建針對html標籤的立即css樣式或限定套用類型的css樣式.
5268
		#回傳的結果:
5269
		#$result["status"],執行是否正常,"true"代表正常;"false"代表不正常.
5270
		#$result["error"],涵式錯誤訊息陣列
5271
		#$result["content"],css語法
5272
		#$result["function"],當前執行的函式名稱.
5273
		#$result["argu"],所使用的參數.
5274
		#必填的參數:
5275
		#$conf["htmlTagName"],字串陣列,為多個要套用樣式的html標籤名稱,若有階層請用「>」表示,ex:「a:hover」代表在<a></a>上滑過去時的樣式;若有從上而下的層級關係,則請用「>」表示,ex:「div>span>img」,就是針對有div標籤裡面的span標籤裡面的img標籤內容的樣式;也可以針對使用特定類別的html標籤來套用css樣式,ex:「div.pink」,就是針對套用pink類別的div標籤來套用css樣式;可以指定擁有特定屬性的標籤與class的元素來套用css樣式,ex:「div['data-selected=true'].specifyClassName」。
5276
		$conf["css::createApplyCssStyle"]["htmlTagName"]=array(".".$conf["shellEleClass"].":hover");
5277
		#$conf["attributes"],字串陣列,為屬性名稱
5278
		$conf["css::createApplyCssStyle"]["attributes"]=array("color","border");
5279
		#$conf["content"],字串陣列,為屬性值
5280
		$conf["css::createApplyCssStyle"]["content"]=array($conf["hoverColor"],$conf["hoverWidth"]." ".$conf["hoverStyle"]);
5281
		$createApplyCssStyle=css::createApplyCssStyle($conf["css::createApplyCssStyle"]);
5282
		unset($conf["css::createApplyCssStyle"]);
5283
 
5284
		#如果建立失敗
5285
		if($createApplyCssStyle["status"]==="false"){
5286
 
5287
			#設置錯誤訊息
5288
			$result["error"]=$createApplyCssStyle;
5289
 
5290
			#設置錯誤識別
5291
			$result["status"]="false";
5292
 
5293
			#結束運行
5294
			return $result;
5295
 
5296
			}#if end
5297
 
5298
		#儲存 css 語法
5299
		$result["content"]=$result["content"].$createApplyCssStyle["content"];
5300
 
5301
		#初始化儲存 icon & comment
5302
		$iconGroup=array();	
5303
 
5304
		#如果有設置 icon
5305
		if(isset($conf["icon"])){	
5306
 
5307
			#針對每個icon
5308
			foreach($conf["icon"] as $index => $icon){
5309
 
5310
				#圖片
5311
				#函數說明:
5312
				#用data:mimeType;base64,imgVar的形式來提供圖片的連結,亦即圖片儲存在變數裡面,本函式包含顯示圖片的語法.
5313
				#回傳結果:
5314
				#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
5315
				#$result["error"],錯誤訊息
5316
				#$result["content"],圖片的連結資訊
5317
				#$result["function"],當前執行的函數名稱 
5318
				#必填參數:
5319
				#$conf["imgPosition"],要轉存成2元碼的圖片檔案位置與名稱
5320
				$conf["img::data"]["imgPosition"]=$icon;
5321
				#$conf["fileArgu"],字串,php變數__FILE__的內容,亦即該檔案在檔案系統的絕對路徑.
5322
				$conf["img::data"]["fileArgu"]=$conf["fileArgu"];
5323
				#可省略參數:
5324
				#$conf["alt"],若沒有圖片要用什麼文字顯示。
5325
				#$conf["alt"]="";
5326
				#$conf["style"],字串陣列,要使用的style,key為樣式名稱,value為樣式值.
5327
				#$conf["style"]=array("width"=>"70vw","height"=>"70vh");
5328
				#$conf["class"],圖片要套用的css樣式名稱.
5329
				$conf["img::data"]["class"]=$conf["imgEleClass"];
5330
				#$conf["mimeType"],2元碼的內容是什麼,預設為"image/*".
5331
				#$conf["mimeType"]="image/*";
5332
				#$conf["compressType"],2元碼壓縮的方式,預設為"base64".
5333
				#$conf["compressType"]="base64";
5334
				#$conf["delImg"],讀取完圖片檔案後,要移除圖片嗎?"true"代表要移除,"false"代表不要移除,預設為"false".
5335
				#$conf["delImg"]="false";
5336
				#參考資料:
5337
				#將檔案用字串變數儲存起來=>http://php.net/manual/en/function.file-get-contents.php
5338
				#壓縮2元碼=>http://php.net/manual/en/function.base64-encode.php
5339
				$data=img::data($conf["img::data"]);
5340
				unset($conf["img::data"]);
5341
 
5342
				#如果建立圖片失敗
5343
				if($data["status"]==="false"){
5344
 
5345
					#設置錯誤訊息
5346
					$result["error"]=$data;
5347
 
5348
					#設置錯誤識別
5349
					$result["status"]="false";
5350
 
5351
					#結束運行
5352
					return $result;
5353
 
5354
					}#if end
5355
 
5356
				#函式說明:
5357
				#<div>區塊,裡面可以指定css的class樣式,可以指定提示文字.
5358
				#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
5359
				#$result["functin"],字串,當前函數的名稱.
5360
				#$result["error"],陣列,錯訊訊息.
5361
				#$result["content"],字串,含有<div>標籤的內容.
5362
				#必填參數:
5363
				#$conf["contentArray"],字串陣列,要放入的內容陣列.
5364
				$conf["css::divSection"]["contentArray"]=array($data["content"]);
5365
				#可省略參數
5366
				#$conf["id"],字串,div區塊的id.
5367
				#$conf["id"]="";
5368
				#$conf["styleAttr"],字串陣列,給div區段要套用的style樣式屬性.
5369
				$conf["css::divSection"]["styleAttr"]=array("text-align","margin");
5370
				#$conf["styleVal"],字串陣列,給div區段要套用的style樣式數值.
5371
				$conf["css::divSection"]["styleVal"]=array("center","20px");
5372
				#$conf["class"],字串,div區段要套用的css樣式.
5373
				#$conf["class"]="cTitle";
5374
				#$conf["title"],陣列,滑鼠移到上面時要顯示的內容,每個元素代表一列內容.
5375
				#$conf["title"]=array();
5376
				#$conf["oneScreenSize"],字串,div區塊是否要占一個螢幕的大小,預設為"false"不設定,"true"為設定成一個螢幕的大小.
5377
				#$conf["oneScreenSize"]="true";
5378
				#$conf["textAlignCenter"],字串,div區塊是否要置中,預設為$conf["oneScreenSize"]的值,"false"為不置中,"true"代表要置中.
5379
				#$conf["textAlignCenter"]="";
5380
				#$conf["data"],字串陣列,每個要設置的屬性data內容,例如array("option1"=>"A","option2"=>"B"),預設不使用.
5381
				#$conf["data"]=array();
5382
				$iconDivSection=css::divSection($conf["css::divSection"]);
5383
				unset($conf["css::divSection"]);
5384
 
5385
				#如果建立div區塊失敗
5386
				if($iconDivSection["status"]==="false"){
5387
 
5388
					#設置錯誤訊息
5389
					$result["error"]=$iconDivSection;
5390
 
5391
					#設置錯誤識別
5392
					$result["status"]="false";
5393
 
5394
					#結束運行
5395
					return $result;
5396
 
5397
					}#if end
5398
 
5399
				#函式說明:
5400
				#<div>區塊,裡面可以指定css的class樣式,可以指定提示文字.
5401
				#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
5402
				#$result["functin"],字串,當前函數的名稱.
5403
				#$result["error"],陣列,錯訊訊息.
5404
				#$result["content"],字串,含有<div>標籤的內容.
5405
				#必填參數:
5406
				#$conf["contentArray"],字串陣列,要放入的內容陣列.
5407
				$conf["css::divSection"]["contentArray"]=array($conf["comment"][$index]);
5408
				#可省略參數
5409
				#$conf["id"],字串,div區塊的id.
5410
				#$conf["id"]="";
5411
				#$conf["styleAttr"],字串陣列,給div區段要套用的style樣式屬性.
5412
				$conf["css::divSection"]["styleAttr"]=array("color","text-align","padding-top");
5413
				#$conf["styleVal"],字串陣列,給div區段要套用的style樣式數值.
5414
				$conf["css::divSection"]["styleVal"]=array("black","center","10px");
5415
				#$conf["class"],字串,div區段要套用的css樣式.
5416
				#$conf["class"]="cTitle";
5417
				#$conf["title"],陣列,滑鼠移到上面時要顯示的內容,每個元素代表一列內容.
5418
				#$conf["title"]=array();
5419
				#$conf["oneScreenSize"],字串,div區塊是否要占一個螢幕的大小,預設為"false"不設定,"true"為設定成一個螢幕的大小.
5420
				#$conf["oneScreenSize"]="true";
5421
				#$conf["textAlignCenter"],字串,div區塊是否要置中,預設為$conf["oneScreenSize"]的值,"false"為不置中,"true"代表要置中.
5422
				#$conf["textAlignCenter"]="";
5423
				#$conf["data"],字串陣列,每個要設置的屬性data內容,例如array("option1"=>"A","option2"=>"B"),預設不使用.
5424
				#$conf["data"]=array();
5425
				$commentDivSection=css::divSection($conf["css::divSection"]);
5426
				unset($conf["css::divSection"]);
5427
 
5428
				#如果建立div區塊失敗
5429
				if($commentDivSection["status"]==="false"){
5430
 
5431
					#設置錯誤訊息
5432
					$result["error"]=$commentDivSection;
5433
 
5434
					#設置錯誤識別
5435
					$result["status"]="false";
5436
 
5437
					#結束運行
5438
					return $result;
5439
 
5440
					}#if end
5441
 
5442
				#函式說明:
5443
				#<div>區塊,裡面可以指定css的class樣式,可以指定提示文字.
5444
				#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
5445
				#$result["functin"],字串,當前函數的名稱.
5446
				#$result["error"],陣列,錯訊訊息.
5447
				#$result["content"],字串,含有<div>標籤的內容.
5448
				#必填參數:
5449
				#$conf["contentArray"],字串陣列,要放入的內容陣列.
5450
				$conf["css::divSection"]["contentArray"]=array($iconDivSection["content"],$commentDivSection["content"]);
5451
				#可省略參數
5452
				#$conf["id"],字串,div區塊的id.
5453
				#$conf["id"]="";
5454
				#$conf["styleAttr"],字串陣列,給div區段要套用的style樣式屬性.
5455
				$conf["css::divSection"]["styleAttr"]=array("text-align","margin");
5456
				#$conf["styleVal"],字串陣列,給div區段要套用的style樣式數值.
5457
				$conf["css::divSection"]["styleVal"]=array("center",$conf["between"]);
5458
				#$conf["class"],字串,div區段要套用的css樣式.
5459
				$conf["css::divSection"]["class"]=$conf["shellEleClass"];
5460
				#$conf["title"],陣列,滑鼠移到上面時要顯示的內容,每個元素代表一列內容.
5461
				#$conf["title"]=array();
5462
				#$conf["oneScreenSize"],字串,div區塊是否要占一個螢幕的大小,預設為"false"不設定,"true"為設定成一個螢幕的大小.
5463
				#$conf["oneScreenSize"]="true";
5464
				#$conf["textAlignCenter"],字串,div區塊是否要置中,預設為$conf["oneScreenSize"]的值,"false"為不置中,"true"代表要置中.
5465
				#$conf["textAlignCenter"]="";
5466
				#$conf["data"],字串陣列,每個要設置的屬性data內容,例如array("option1"=>"A","option2"=>"B"),預設不使用.
5467
				#$conf["data"]=array();
5468
				$divSection=css::divSection($conf["css::divSection"]);
5469
				unset($conf["css::divSection"]);
5470
 
5471
				#如果建立div區塊失敗
5472
				if($divSection["status"]==="false"){
5473
 
5474
					#設置錯誤訊息
5475
					$result["error"]=$divSection;
5476
 
5477
					#設置錯誤識別
5478
					$result["status"]="false";
5479
 
5480
					#結束運行
5481
					return $result;
5482
 
5483
					}#if end
5484
 
5485
				#儲存 icon & comment 語法
5486
				$iconGroup[]=$divSection["content"];
5487
 
5488
				}#foreach end
5489
 
5490
			}#if end
5491
 
5492
		#background
5493
		#函式說明:
5494
		#<div>區塊,裡面可以指定css的class樣式,可以指定提示文字.
5495
		#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
5496
		#$result["functin"],字串,當前函數的名稱.
5497
		#$result["error"],陣列,錯訊訊息.
5498
		#$result["content"],字串,含有<div>標籤的內容.
5499
		#必填參數:
5500
		#$conf["contentArray"],字串陣列,要放入的內容陣列.
5501
		$conf["css::divSection"]["contentArray"]=$iconGroup;
5502
		#可省略參數
5503
		#$conf["id"],字串,div區塊的id.
5504
		#$conf["id"]="";
5505
 
5506
		#如果有設置 bgImg
5507
		if(isset($conf["bgImg"])){
5508
 
5509
			#$conf["styleAttr"],字串陣列,給div區段要套用的style樣式屬性.
5510
			$conf["css::divSection"]["styleAttr"]=array("background-image","text-align");
5511
			#$conf["styleVal"],字串陣列,給div區段要套用的style樣式數值.
5512
			$conf["css::divSection"]["styleVal"]=array("url('".$conf["bgImg"]."')","center");
5513
 
5514
			}#if end
5515
 
5516
		#反之為背景顏色
5517
		else{
5518
 
5519
			#$conf["styleAttr"],字串陣列,給div區段要套用的style樣式屬性.
5520
			$conf["css::divSection"]["styleAttr"]=array("background-color","text-align");
5521
			#$conf["styleVal"],字串陣列,給div區段要套用的style樣式數值.
5522
			$conf["css::divSection"]["styleVal"]=array($conf["bgColor"],"center");
5523
 
5524
			}#else end
5525
 
5526
		#$conf["class"],字串,div區段要套用的css樣式.
5527
		#$conf["class"]="bgStyle product_list";
5528
		#$conf["title"],陣列,滑鼠移到上面時要顯示的內容,每個元素代表一列內容.
5529
		#$conf["title"]=array();
5530
		#$conf["oneScreenSize"],字串,div區塊是否要占一個螢幕的大小,預設為"false"不設定,"true"為設定成一個螢幕的大小.
5531
		#$conf["oneScreenSize"]="true";
5532
		#$conf["textAlignCenter"],字串,div區塊是否要置中,預設為$conf["oneScreenSize"]的值,"false"為不置中,"true"代表要置中.
5533
		#$conf["textAlignCenter"]="";
5534
		#$conf["data"],字串陣列,每個要設置的屬性data內容,例如array("option1"=>"A","option2"=>"B"),預設不使用.
5535
		#$conf["data"]=array();
5536
		$divSection=css::divSection($conf["css::divSection"]);
5537
		unset($conf["css::divSection"]);
5538
 
5539
		#如果建立div區塊失敗
5540
		if($divSection["status"]==="false"){
5541
 
5542
			#設置錯誤訊息
5543
			$result["error"]=$divSection;
5544
 
5545
			#設置錯誤識別
5546
			$result["status"]="false";
5547
 
5548
			#結束運行
5549
			return $result;
5550
 
5551
			}#if end
5552
 
5553
		#儲存語法
5554
		$result["content"]=$result["content"].$divSection["content"];
5555
 
5556
		#設置成功識別
5557
		$result["status"]="true";
5558
 
5559
		#回傳結果
5560
		return $result;
5561
 
5562
		}#function rwdIcon end
5563
 
5564
	/*
5565
	#函式說明:
5566
	#建立rwd的一列內容.
5567
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
5568
	#$result["error"],錯誤訊息.
5569
	#$result["function"],當前執行的函數名稱.
5570
	#$result["content"],語法.
5571
	#$result["argu"],使用的參數.
5572
	#必填參數:
5573
	#$conf["target"],字串陣列,要套用rwd的項目內容.
5574
	$conf["target"]=array();
5575
	#$conf["classHead"],字串,div項目對應的類別前戳字串.
5576
	$conf["classHead"]="";
5577
	#可省略參數:
5578
	#$conf["minWidth"],字串,寬度大於多少要套用指定的寬度,單位為px,預設為600px.
5579
	#$conf["minWidth"]="600px";
5580
	#$conf["minWidthWidths"],字串陣列,寬度大於 minWidth 時,每個 divs 參數對應的寬度,數量需要跟 divs 一樣,預設為等值的數量target,加總小於等於90;
5581
	#$conf["minWidthWidths"]=array();
5582
	#$conf["maxWidth"],字串,寬度小於多少要套用指定的寬度,單位為px,預設為600px.
5583
	#$conf["maxWidth"]="600px";
5584
	#$conf["maxWidthWidths"],字串陣列,寬度小於 maxWidth 時,每個 divs 參數對應的寬度,數量需要跟 divs 一樣,預設皆為100,建議不要設定.
5585
	#$conf["maxWidthWidths"]=array();
5586
	#$conf["padding"],字串,物件要內縮多少寬度,預設為"30px".
5587
	#$conf["padding"]="30px";
5588
	#參考資料:
5589
	#無.
5590
	#備註:
5591
	#參數 $conf["maxWidthWidths"] 的元素總只能都設100,要不然排版會亂掉.
5592
	*/
5593
	public static function rwdInlineBlock(&$conf){
5594
 
5595
		#初始化要回傳的結果
5596
		$result=array();
5597
 
5598
		#取得當前執行的函數名稱
5599
		$result["function"]=__FUNCTION__;
5600
 
5601
		#如果沒有參數
5602
		if(func_num_args()==0){
5603
 
5604
			#設置執行失敗
5605
			$result["status"]="false";
5606
 
5607
			#設置執行錯誤訊息
5608
			$result["error"]="函數".$result["function"]."需要參數";
5609
 
5610
			#回傳結果
5611
			return $result;
5612
 
5613
			}#if end
5614
 
5615
		#取得參數
5616
		$result["argu"]=$conf;
5617
 
5618
		#如果 $conf 不為陣列
5619
		if(gettype($conf)!=="array"){
5620
 
5621
			#設置執行失敗
5622
			$result["status"]="false";
5623
 
5624
			#設置執行錯誤訊息
5625
			$result["error"][]="\$conf變數須為陣列形態";
5626
 
5627
			#如果傳入的參數為 null
5628
			if($conf===null){
5629
 
5630
				#設置執行錯誤訊息
5631
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
5632
 
5633
				}#if end
5634
 
5635
			#回傳結果
5636
			return $result;
5637
 
5638
			}#if end
5639
 
5640
		#檢查參數
5641
		#函式說明:
5642
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
5643
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
5644
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
5645
		#$result["function"],當前執行的函式名稱.
5646
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
5647
		#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
5648
		#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
5649
		#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
5650
		#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
5651
		#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
5652
		#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
5653
		#$result["notNeedVar"],字串陣列,多餘的參數名稱.
5654
		#必填寫的參數:
5655
		#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
5656
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
5657
		#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
5658
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("target","classHead");
5659
		#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
5660
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("array","string");
5661
		#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
5662
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
5663
		#可以省略的參數:
5664
		#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
5665
		$conf["variableCheck::checkArguments"]["canBeEmptyString"]="false";
5666
		#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或集合.
5667
		$conf["variableCheck::checkArguments"]["skipableVariableCanNotBeEmpty"]=array("minWidth","minWidthWidths","maxWidth","maxWidthWidths","padding");
5668
		#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
5669
		$conf["variableCheck::checkArguments"]["skipableVariableName"]=array("minWidth","minWidthWidths","maxWidth","maxWidthWidths","padding");
5670
		#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
5671
		$conf["variableCheck::checkArguments"]["skipableVariableType"]=array("string","array","string","array","string");
5672
		#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
5673
		$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"]=array("600px",null,"600px",null,"30px");
5674
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
5675
		$conf["variableCheck::checkArguments"]["arrayCountEqualCheck"][]=array("target","minWidthWidths","maxWidthWidths");
5676
		#參考資料來源:
5677
		#array_keys=>http://php.net/manual/en/function.array-keys.php
5678
		$checkArguments=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
5679
		unset($conf["variableCheck::checkArguments"]);
5680
 
5681
		#如果檢查參數失敗
5682
		if($checkArguments["status"]==="false"){
5683
 
5684
			#設置執行不正常
5685
			$result["status"]="false";
5686
 
5687
			#設置執行錯誤
5688
			$result["error"]=$checkArguments;
5689
 
5690
			#回傳結果
5691
			return $result;
5692
 
5693
			}#if end
5694
 
5695
		#如果檢查參數不通過
5696
		if($checkArguments["passed"]==="false"){
5697
 
5698
			#設置執行不正常
5699
			$result["status"]="false";
5700
 
5701
			#設置執行錯誤
5702
			$result["error"]=$checkArguments;
5703
 
5704
			#回傳結果
5705
			return $result;
5706
 
5707
			}#if end
5708
 
5709
		#如果未指定 $conf["minWidthWidths"]
5710
		if(!isset($conf["minWidthWidths"])){
5711
 
5712
			#初始化儲存每個div的寬度
5713
			$conf["minWidthWidths"]=array();
5714
 
5715
			#每個div的寬度一致且總和小於90
5716
			$eachDivWidth=(int)(90/count($conf["target"]));
5717
 
5718
			#有幾個 $conf["target"] 就執行幾次
5719
			foreach($conf["target"] as $target){
5720
 
5721
				#儲存 div 的寬度
5722
				$conf["minWidthWidths"][]=$eachDivWidth;
5723
 
5724
				}#foreach end
5725
 
5726
			}#if end
5727
 
5728
		#如果未指定 $conf["maxWidthWidths"]
5729
		if(!isset($conf["maxWidthWidths"])){
5730
 
5731
			#初始化儲存每個div的寬度
5732
			$conf["maxWidthWidths"]=array();
5733
 
5734
			#每個div的寬度皆為100
5735
			$eachDivWidth="100";
5736
 
5737
			#有幾個 $conf["target"] 就執行幾次
5738
			foreach($conf["target"] as $target){
5739
 
5740
				#儲存 div 的寬度
5741
				$conf["maxWidthWidths"][]=$eachDivWidth;
5742
 
5743
				}#foreach end
5744
 
5745
			}#if end
5746
 
5747
		#初始化要回傳的語法
5748
		$result["content"]="";
5749
 
5750
		#初始化儲存 inline block 的 div 的陣列
5751
		$inlineBlockDiv=array();
5752
 
5753
		#初始化儲存 div 的 class 清單
5754
		$divClassList=array();
5755
 
5756
		#初始化儲存每個 div 的樣式屬性
5757
		$minStyleAttrs=array();
5758
 
5759
		#初始儲存每個 div 的樣式數值
5760
		$minStyleVals=array();
5761
 
5762
		#初始化儲存每個 div 的樣式屬性
5763
		$maxStyleAttrs=array();
5764
 
5765
		#初始儲存每個 div 的樣式數值
5766
		$maxStyleVals=array();
5767
 
5768
		#用於左右對稱的最左邊空div
5769
		#函式說明:
5770
		#<div>區塊,裡面可以指定css的class樣式,可以指定提示文字.
5771
		#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
5772
		#$result["functin"],字串,當前函數的名稱.
5773
		#$result["error"],陣列,錯訊訊息.
5774
		#$result["content"],字串,含有<div>標籤的內容.
5775
		#必填參數:
5776
		#$conf["contentArray"],字串陣列,要放入的內容陣列.
5777
		$conf["css::divSection"]["contentArray"]=array("");
5778
		#可省略參數
5779
		#$conf["id"],字串,div區塊的id.
5780
		#$conf["id"]="";
5781
		#$conf["styleAttr"],字串陣列,給div區段要套用的style樣式屬性.
5782
		$conf["css::divSection"]["styleAttr"]=array("display");
5783
		#$conf["styleVal"],字串陣列,給div區段要套用的style樣式數值.
5784
		$conf["css::divSection"]["styleVal"]=array("inline-block");
5785
		#$conf["class"],字串,div區段要套用的css樣式.
5786
		$conf["css::divSection"]["class"]=$conf["classHead"]."-left";
5787
		#$conf["title"],陣列,滑鼠移到上面時要顯示的內容,每個元素代表一列內容.
5788
		#$conf["title"]=array();
5789
		#$conf["oneScreenSize"],字串,div區塊是否要占一個螢幕的大小,預設為"false"不設定,"true"為設定成一個螢幕的大小.
5790
		#$conf["oneScreenSize"]="false";
5791
		#$conf["textAlignCenter"],字串,div區塊是否要置中,預設為$conf["oneScreenSize"]的值,"false"為不置中,"true"代表要置中.
5792
		#$conf["textAlignCenter"]="";
5793
		#$conf["data"],字串陣列,每個要設置的屬性data內容,例如array("option1"=>"A","option2"=>"B"),預設不使用.
5794
		#$conf["data"]=array();
5795
		$divSection=css::divSection($conf["css::divSection"]);
5796
		unset($conf["css::divSection"]);		
5797
 
5798
		#如果建立div失敗
5799
		if($divSection["status"]==="false"){
5800
 
5801
			#設置執行不正常
5802
			$result["status"]="false";
5803
 
5804
			#設置執行錯誤
5805
			$result["error"]=$divSection;
5806
 
5807
			#回傳結果
5808
			return $result;
5809
 
5810
			}#if end
5811
 
5812
		#儲存 divSection
5813
		$inlineBlockDiv[]=$divSection["content"];
5814
 
5815
		#儲存 div class
5816
		$divClassList[]=".".$conf["classHead"]."-left";
5817
 
5818
		#儲存 div style attr
5819
		$minStyleAttrs[]=array("width");
5820
 
5821
		#儲存 div style attr
5822
		$maxStyleAttrs[]=array("width");
5823
 
5824
		#針對每個 $conf["target"]
5825
		foreach($conf["target"] as $index=>$target){
5826
 
5827
			#函式說明:
5828
			#<div>區塊,裡面可以指定css的class樣式,可以指定提示文字.
5829
			#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
5830
			#$result["functin"],字串,當前函數的名稱.
5831
			#$result["error"],陣列,錯訊訊息.
5832
			#$result["content"],字串,含有<div>標籤的內容.
5833
			#必填參數:
5834
			#$conf["contentArray"],字串陣列,要放入的內容陣列.
5835
			$conf["css::divSection"]["contentArray"]=array($target);
5836
			#可省略參數
5837
			#$conf["id"],字串,div區塊的id.
5838
			#$conf["id"]="";
5839
			#$conf["styleAttr"],字串陣列,給div區段要套用的style樣式屬性.
5840
			$conf["css::divSection"]["styleAttr"]=array("display");
5841
			#$conf["styleVal"],字串陣列,給div區段要套用的style樣式數值.
5842
			$conf["css::divSection"]["styleVal"]=array("inline-block");
5843
			#$conf["class"],字串,div區段要套用的css樣式.
5844
			$conf["css::divSection"]["class"]=$conf["classHead"]."-".$index;
5845
			#$conf["title"],陣列,滑鼠移到上面時要顯示的內容,每個元素代表一列內容.
5846
			#$conf["title"]=array();
5847
			#$conf["oneScreenSize"],字串,div區塊是否要占一個螢幕的大小,預設為"false"不設定,"true"為設定成一個螢幕的大小.
5848
			#$conf["oneScreenSize"]="false";
5849
			#$conf["textAlignCenter"],字串,div區塊是否要置中,預設為$conf["oneScreenSize"]的值,"false"為不置中,"true"代表要置中.
5850
			#$conf["textAlignCenter"]="";
5851
			#$conf["data"],字串陣列,每個要設置的屬性data內容,例如array("option1"=>"A","option2"=>"B"),預設不使用.
5852
			#$conf["data"]=array();
5853
			$divSection=css::divSection($conf["css::divSection"]);
5854
			unset($conf["css::divSection"]);		
5855
 
5856
			#如果建立div失敗
5857
			if($divSection["status"]==="false"){
5858
 
5859
				#設置執行不正常
5860
				$result["status"]="false";
5861
 
5862
				#設置執行錯誤
5863
				$result["error"]=$divSection;
5864
 
5865
				#回傳結果
5866
				return $result;
5867
 
5868
				}#if end
5869
 
5870
			#儲存 divSection
5871
			$inlineBlockDiv[]=$divSection["content"];
5872
 
5873
			#儲存 div class 到 divClassList	
5874
			$divClassList[]=".".$conf["classHead"]."-".$index;	
5875
 
5876
			#儲存 div style attr
5877
			$minStyleAttrs[]=array("width","padding");	
5878
 
5879
			#初始儲存每個 div 的樣式數值
5880
			$minStyleVals[]=array($conf["minWidthWidths"][$index]."vw",$conf["padding"]);
5881
 
5882
			#儲存 max div style arrt
5883
			$maxStyleAttrs[]=array("width","padding");
5884
 
5885
			#初始儲存每個 max div 的樣式數值
5886
			$maxStyleVals[]=array($conf["maxWidthWidths"][$index]."vw",$conf["padding"]);
5887
 
5888
			}#foreach end
5889
 
5890
		#函式說明:
5891
		#<div>區塊,裡面可以指定css的class樣式,可以指定提示文字.
5892
		#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
5893
		#$result["functin"],字串,當前函數的名稱.
5894
		#$result["error"],陣列,錯訊訊息.
5895
		#$result["content"],字串,含有<div>標籤的內容.
5896
		#必填參數:
5897
		#$conf["contentArray"],字串陣列,要放入的內容陣列.
5898
		$conf["css::divSection"]["contentArray"]=$inlineBlockDiv;
5899
		#可省略參數
5900
		#$conf["id"],字串,div區塊的id.
5901
		#$conf["id"]="";
5902
		#$conf["styleAttr"],字串陣列,給div區段要套用的style樣式屬性.
5903
		#$conf["css::divSection"["styleAttr"]=array("display");
5904
		#$conf["styleVal"],字串陣列,給div區段要套用的style樣式數值.
5905
		#$conf["css::divSection"["styleVal"]=array("inline-block");
5906
		#$conf["class"],字串,div區段要套用的css樣式.
5907
		#$conf["css::divSection"]["class"]=$divClassList
5908
		#$conf["title"],陣列,滑鼠移到上面時要顯示的內容,每個元素代表一列內容.
5909
		#$conf["title"]=array();
5910
		#$conf["oneScreenSize"],字串,div區塊是否要占一個螢幕的大小,預設為"false"不設定,"true"為設定成一個螢幕的大小.
5911
		#$conf["oneScreenSize"]="false";
5912
		#$conf["textAlignCenter"],字串,div區塊是否要置中,預設為$conf["oneScreenSize"]的值,"false"為不置中,"true"代表要置中.
5913
		#$conf["textAlignCenter"]="";
5914
		#$conf["data"],字串陣列,每個要設置的屬性data內容,例如array("option1"=>"A","option2"=>"B"),預設不使用.
5915
		#$conf["data"]=array();
5916
		$divSection=css::divSection($conf["css::divSection"]);
5917
		unset($conf["css::divSection"]);		
5918
 
5919
		#如果建立div失敗
5920
		if($divSection["status"]==="false"){
5921
 
5922
			#設置執行不正常
5923
			$result["status"]="false";
5924
 
5925
			#設置執行錯誤
5926
			$result["error"]=$divSection;
5927
 
5928
			#回傳結果
5929
			return $result;
5930
 
5931
			}#if end
5932
 
5933
		#串接 row div 語法
5934
		$result["content"]=$result["content"].$divSection["content"];
5935
 
5936
		#初始化儲存寬度比例
5937
		$width=0;
5938
 
5939
		#加總大於 minWidth 每個 div 項目的寬度
5940
		for($i=0;$i<count($conf["minWidthWidths"]);$i++){
5941
 
5942
			#加總寬度
5943
			$width=$width+$conf["minWidthWidths"][$i];
5944
 
5945
			}#for end
5946
 
5947
		#如果小於100
5948
		if($width<100){
5949
 
5950
			#取得左邊空div的vw
5951
			$leftEmptyDivWidth=((100-$width)/2)."vw";
5952
 
5953
			}#if end
5954
 
5955
		#反之
5956
		else{
5957
 
5958
			#設置執行不正常
5959
			$result["status"]="false";
5960
 
5961
			#設置執行錯誤
5962
			$result["error"][]="minWidthWidths加總不得大於100";
5963
 
5964
			#回傳結果
5965
			return $result;
5966
 
5967
			}#else end
5968
 
5969
		#first+$minsStyleVals;
5970
		#函式說明:
5971
		#將多個一維陣列串聯起來,key從0開始排序.
5972
		#回傳的結果:
5973
		#$result["status"],"true"表執行正常,"false"代表執行不正常.
5974
		#$result["error"],錯誤訊息陣列.
5975
		#$result["function"],當前執行的函數.
5976
		#$result["content"],合併好的一維陣列.
5977
		#必填的參數
5978
		#$conf["inputArray"],陣列,要合併的一維陣列變數,例如:=array($array1,$array2);
5979
		$conf["arrays::mergeArray"]["inputArray"]=array(array(array($leftEmptyDivWidth)),$minStyleVals);
5980
		#可省略的參數:
5981
		#$conf["allowRepeat"],字串,預設為"true",允許重複的結果;若為"false"則不會出現重複的元素內容.
5982
		#$conf["allowRepeat"]="true";
5983
		$mergeArray=arrays::mergeArray($conf["arrays::mergeArray"]);
5984
		unset($conf["arrays::mergeArray"]);	
5985
 
5986
		#如果合併陣列失敗
5987
		if($mergeArray["status"]==="false"){
5988
 
5989
			#設置執行不正常
5990
			$result["status"]="false";
5991
 
5992
			#設置執行錯誤
5993
			$result["error"]=$mergeArray;
5994
 
5995
			#回傳結果
5996
			return $result;
5997
 
5998
			}#if end
5999
 
6000
		#儲存合併好的陣列
6001
		$minsStyleVals=$mergeArray["content"];
6002
 
6003
		#設置rwd的寬度與樣式
6004
		#函式說明:
6005
		#響應式css樣式,依據瀏覽器的環境(寬度,高度...),使用指定的css樣式
6006
		#回傳結果:
6007
		#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
6008
		#$result["functin"],字串,當前函數的名稱.
6009
		#$result["error"],陣列,錯訊訊息.
6010
		#$result["content"],字串,匯入css樣式的語法.
6011
		#必填參數:
6012
		#$conf["conName"],陣列字串,判斷的條件屬性陣列,可以用"min-width","max-width"...).
6013
		$conf["css::rwd"]["conName"]=array("min-width");
6014
		#$conf["conVal"],陣列字串,判斷的條件數值陣列,可以為"100px"...
6015
		$conf["css::rwd"]["conVal"]=array($conf["minWidth"]);
6016
		#$conf["target"],陣列字串,要設置哪些目標的css樣式,若為class樣式則要在名稱開頭補上「.」,也可以使用html標籤與階層關係等.
6017
		$conf["css::rwd"]["target"]=$divClassList;
6018
		#conf["styleAttr"],二維陣列字串,針對每個$conf["target"]要使用的css樣式屬性陣列.
6019
		$conf["css::rwd"]["styleAttr"]=$minStyleAttrs;
6020
		#conf["styleVal"],二維陣列字串,針對每個$conf["target"]要使用的css樣式數值陣列.
6021
		$conf["css::rwd"]["styleVal"]=$minsStyleVals;
6022
		$rwd=css::rwd($conf["css::rwd"]);
6023
		unset($conf["css::rwd"]);	
6024
 
6025
		#如果合併陣列失敗
6026
		if($rwd["status"]==="false"){
6027
 
6028
			#設置執行不正常
6029
			$result["status"]="false";
6030
 
6031
			#設置執行錯誤
6032
			$result["error"]=$rwd;
6033
 
6034
			#回傳結果
6035
			return $result;
6036
 
6037
			}#if end	
6038
 
6039
		#串接 css語法
6040
		$result["content"]=$result["content"].$rwd["content"];	
6041
 
6042
		#初始化儲存寬度比例
6043
		$width=0;
6044
 
6045
		#加總小於 maxWidth 每個 div 項目的寬度
6046
		for($i=0;$i<count($conf["maxWidthWidths"]);$i++){
6047
 
6048
			#加總寬度
6049
			$width=$width+$conf["maxWidthWidths"][$i];
6050
 
6051
			}#for end
6052
 
6053
		#如果小於100
6054
		if($width<100){
6055
 
6056
			#取得左邊空div的vw
6057
			$leftEmptyDivWidth=((100-$width)/2)."vw";
6058
 
6059
			}#if end
6060
 
6061
		#反之
6062
		else{
6063
 
6064
			#設置左邊空div的vw為0vw
6065
			$leftEmptyDivWidth="0vw";
6066
 
6067
			}#else end
6068
 
6069
		#$first+$maxStyleVals	
6070
		#函式說明:
6071
		#將多個一維陣列串聯起來,key從0開始排序.
6072
		#回傳的結果:
6073
		#$result["status"],"true"表執行正常,"false"代表執行不正常.
6074
		#$result["error"],錯誤訊息陣列.
6075
		#$result["function"],當前執行的函數.
6076
		#$result["content"],合併好的一維陣列.
6077
		#必填的參數
6078
		#$conf["inputArray"],陣列,要合併的一維陣列變數,例如:=array($array1,$array2);
6079
		$conf["arrays::mergeArray"]["inputArray"]=array(array(array($leftEmptyDivWidth)),$maxStyleVals);
6080
		#可省略的參數:
6081
		#$conf["allowRepeat"],字串,預設為"true",允許重複的結果;若為"false"則不會出現重複的元素內容.
6082
		#$conf["allowRepeat"]="true";
6083
		$mergeArray=arrays::mergeArray($conf["arrays::mergeArray"]);
6084
		unset($conf["arrays::mergeArray"]);	
6085
 
6086
		#如果合併陣列失敗
6087
		if($mergeArray["status"]==="false"){
6088
 
6089
			#設置執行不正常
6090
			$result["status"]="false";
6091
 
6092
			#設置執行錯誤
6093
			$result["error"]=$mergeArray;
6094
 
6095
			#回傳結果
6096
			return $result;
6097
 
6098
			}#if end
6099
 
6100
		#儲存合併好的陣列	
6101
		$maxStyleVals=$mergeArray["content"];	
6102
 
6103
		#設置rwd的寬度與樣式
6104
		#函式說明:
6105
		#響應式css樣式,依據瀏覽器的環境(寬度,高度...),使用指定的css樣式
6106
		#回傳結果:
6107
		#$result["status"],字串,執行否正常,"true"代表正常,"false"代表不正常.
6108
		#$result["functin"],字串,當前函數的名稱.
6109
		#$result["error"],陣列,錯訊訊息.
6110
		#$result["content"],字串,匯入css樣式的語法.
6111
		#必填參數:
6112
		#$conf["conName"],陣列字串,判斷的條件屬性陣列,可以用"min-width","max-width"...).
6113
		$conf["css::rwd"]["conName"]=array("max-width");
6114
		#$conf["conVal"],陣列字串,判斷的條件數值陣列,可以為"100px"...
6115
		$conf["css::rwd"]["conVal"]=array($conf["maxWidth"]);
6116
		#$conf["target"],陣列字串,要設置哪些目標的css樣式,若為class樣式則要在名稱開頭補上「.」,也可以使用html標籤與階層關係等.
6117
		$conf["css::rwd"]["target"]=$divClassList;
6118
		#conf["styleAttr"],二維陣列字串,針對每個$conf["target"]要使用的css樣式屬性陣列.
6119
		$conf["css::rwd"]["styleAttr"]=$maxStyleAttrs;
6120
		#conf["styleVal"],二維陣列字串,針對每個$conf["target"]要使用的css樣式數值陣列.
6121
		$conf["css::rwd"]["styleVal"]=$maxStyleVals;
6122
		$rwd=css::rwd($conf["css::rwd"]);
6123
		unset($conf["css::rwd"]);	
6124
 
6125
		#如果合併陣列失敗
6126
		if($rwd["status"]==="false"){
6127
 
6128
			#設置執行不正常
6129
			$result["status"]="false";
6130
 
6131
			#設置執行錯誤
6132
			$result["error"]=$rwd;
6133
 
6134
			#回傳結果
6135
			return $result;
6136
 
6137
			}#if end	
6138
 
6139
		#串接 css語法
6140
		$result["content"]=$result["content"].$rwd["content"];	
6141
 
6142
		#設置執行正常
6143
		$result["status"]="true";
6144
 
6145
		#回傳結果
6146
		return $result;
6147
 
6148
		}#function rwdInlineBlock end
6149
 
6150
	/*
6151
	#函式說明:
6152
	#建立qbpwcf專屬的css類別樣式
6153
	#回傳結果:
6154
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6155
	#$result["error"],錯誤訊息.
6156
	#$result["function"],當前執行的函數名稱.
6157
	#$result["content"],css語法.
6158
	#必填參數:
6159
	#無.
6160
	#可省略參數:
6161
	#無.
6162
	#參考資料:
6163
	#無.
6164
	#備註:
6165
	#無.
6166
	*/
6167
	public static function qbpwcfStyle(){
6168
 
6169
		#初始化要回傳的結果
6170
		$result=array();
6171
 
6172
		#取得當前執行的函數名稱
6173
		$result["function"]=__FUNCTION__;
6174
 
6175
		#初始化回傳的css類別樣式內容
6176
		$result["content"]="";
6177
 
6178
		#建立通用的樣式
6179
		#函式說明:
6180
		#創建 css 樣式,前面會自動加上「.」.
6181
		#回傳的結果:
6182
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6183
		#$result["css"],css設定內容
6184
		#$result["function"],當前執行的函數
6185
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6186
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6187
		#必填的參數:
6188
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_button";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6189
		$conf["css::createCssStyle"]["attributes"]=array("width","height","font-size","text-align");#為屬性名稱,須為陣列值
6190
		$conf["css::createCssStyle"]["content"]=array("100%","55px","30px","center");#為屬性值,須為陣列值
6191
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6192
		unset($conf["css::createCssStyle"]);
6193
 
6194
		#如果建立css樣式失敗
6195
		if($createCssStyle["status"]==="false"){
6196
 
6197
			#設置執行失敗
6198
			$result["status"]="false";
6199
 
6200
			#設置執行錯誤訊息
6201
			$result["error"]=$createCssStyle;
6202
 
6203
			#回傳結果
6204
			return $result;
6205
 
6206
			}#if end
6207
 
6208
		#儲存css類別樣式
6209
		$result["content"]=$result["content"].$createCssStyle["content"];
6210
 
6211
		#建立div文字的樣式
6212
		#函式說明:
6213
		#創建 css 樣式,前面會自動加上「.」.
6214
		#回傳的結果:
6215
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6216
		#$result["css"],css設定內容
6217
		#$result["function"],當前執行的函數
6218
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6219
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6220
		#必填的參數:
6221
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_divFontCssStyle";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6222
		$conf["css::createCssStyle"]["attributes"]=array("font-size","color");#為屬性名稱,須為陣列值
6223
		$conf["css::createCssStyle"]["content"]=array("30px","#000000");#為屬性值,須為陣列值
6224
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6225
		unset($conf["css::createCssStyle"]);
6226
 
6227
		#如果建立css樣式失敗
6228
		if($createCssStyle["status"]==="false"){
6229
 
6230
			#設置執行失敗
6231
			$result["status"]="false";
6232
 
6233
			#設置執行錯誤訊息
6234
			$result["error"]=$createCssStyle;
6235
 
6236
			#回傳結果
6237
			return $result;
6238
 
6239
			}#if end
6240
 
6241
		#儲存css類別樣式
6242
		$result["content"]=$result["content"].$createCssStyle["content"];
6243
 
6244
		#建立動作提示文字的樣式
6245
		#函式說明:
6246
		#創建 css 樣式,前面會自動加上「.」.
6247
		#回傳的結果:
6248
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6249
		#$result["css"],css設定內容
6250
		#$result["function"],當前執行的函數
6251
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6252
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6253
		#必填的參數:
6254
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_actionFontCssStyle";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6255
		$conf["css::createCssStyle"]["attributes"]=array("text-align","font-size","color");#為屬性名稱,須為陣列值
6256
		$conf["css::createCssStyle"]["content"]=array("center","30px","#990000");#為屬性值,須為陣列值
6257
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6258
		unset($conf["css::createCssStyle"]);
6259
 
6260
		#如果建立css樣式失敗
6261
		if($createCssStyle["status"]==="false"){
6262
 
6263
			#設置執行失敗
6264
			$result["status"]="false";
6265
 
6266
			#設置執行錯誤訊息
6267
			$result["error"]=$createCssStyle;
6268
 
6269
			#回傳結果
6270
			return $result;
6271
 
6272
			}#if end
6273
 
6274
		#儲存css類別樣式
6275
		$result["content"]=$result["content"].$createCssStyle["content"];
6276
 
6277
		#itemNameFontCssStyle
6278
		#函式說明:
6279
		#創建 css 樣式,前面會自動加上「.」.
6280
		#回傳的結果:
6281
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6282
		#$result["css"],css設定內容
6283
		#$result["function"],當前執行的函數
6284
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6285
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6286
		#必填的參數:
6287
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_itemNameFontCssStyle";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6288
		$conf["css::createCssStyle"]["attributes"]=array("text-align","font-size","color","font-weight","text-decoration");#為屬性名稱,須為陣列值
6289
		$conf["css::createCssStyle"]["content"]=array("center","30px","#990000","bold","underline");#為屬性值,須為陣列值
6290
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6291
		unset($conf["css::createCssStyle"]);
6292
 
6293
		#如果建立css樣式失敗
6294
		if($createCssStyle["status"]==="false"){
6295
 
6296
			#設置執行失敗
6297
			$result["status"]="false";
6298
 
6299
			#設置執行錯誤訊息
6300
			$result["error"]=$createCssStyle;
6301
 
6302
			#回傳結果
6303
			return $result;
6304
 
6305
			}#if end
6306
 
6307
		#儲存css類別樣式
6308
		$result["content"]=$result["content"].$createCssStyle["content"];
6309
 
6310
		#__qbpwcf_inputCheckBoxCssStyle
6311
		#函式說明:
6312
		#創建 css 樣式,前面會自動加上「.」.
6313
		#回傳的結果:
6314
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6315
		#$result["css"],css設定內容
6316
		#$result["function"],當前執行的函數
6317
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6318
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6319
		#必填的參數:
6320
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_inputCheckBoxCssStyle";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6321
		$conf["css::createCssStyle"]["attributes"]=array("font-size","text-align");#為屬性名稱,須為陣列值
6322
		$conf["css::createCssStyle"]["content"]=array("30px","center");#為屬性值,須為陣列值
6323
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6324
		unset($conf["css::createCssStyle"]);
6325
 
6326
		#如果建立css樣式失敗
6327
		if($createCssStyle["status"]==="false"){
6328
 
6329
			#設置執行失敗
6330
			$result["status"]="false";
6331
 
6332
			#設置執行錯誤訊息
6333
			$result["error"]=$createCssStyle;
6334
 
6335
			#回傳結果
6336
			return $result;
6337
 
6338
			}#if end
6339
 
6340
		#儲存css類別樣式
6341
		$result["content"]=$result["content"].$createCssStyle["content"];
6342
 
6343
		#__qbpwcf_inputRadioWithBorder
6344
		#函式說明:
6345
		#創建 css 樣式,前面會自動加上「.」.
6346
		#回傳的結果:
6347
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6348
		#$result["css"],css設定內容
6349
		#$result["function"],當前執行的函數
6350
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6351
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6352
		#必填的參數:
6353
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_inputRadioWithBorder";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6354
		$conf["css::createCssStyle"]["attributes"]=array("width","height","text-align","margin-left","margin-right","word-break","font-size","border","border-color","border-style");#為屬性名稱,須為陣列值
6355
		$conf["css::createCssStyle"]["content"]=array("100%","60px","center","auto","auto","break-all","30px","1px","#000000","solid");#為屬性值,須為陣列值
6356
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6357
		unset($conf["css::createCssStyle"]);
6358
 
6359
		#如果建立css樣式失敗
6360
		if($createCssStyle["status"]==="false"){
6361
 
6362
			#設置執行失敗
6363
			$result["status"]="false";
6364
 
6365
			#設置執行錯誤訊息
6366
			$result["error"]=$createCssStyle;
6367
 
6368
			#回傳結果
6369
			return $result;
6370
 
6371
			}#if end
6372
 
6373
		#儲存css類別樣式
6374
		$result["content"]=$result["content"].$createCssStyle["content"];
6375
 
6376
		#__qbpwcf_inputRadioWithoutBorder
6377
		#函式說明:
6378
		#創建 css 樣式,前面會自動加上「.」.
6379
		#回傳的結果:
6380
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6381
		#$result["css"],css設定內容
6382
		#$result["function"],當前執行的函數
6383
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6384
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6385
		#必填的參數:
6386
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_inputRadioWithoutBorder";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6387
		$conf["css::createCssStyle"]["attributes"]=array("width","height","text-align","margin-left","margin-right","word-break","font-size","border","border-color","border-style");#為屬性名稱,須為陣列值
6388
		$conf["css::createCssStyle"]["content"]=array("100%","60px","center","auto","auto","break-all","30px","0px","#000000","solid");#為屬性值,須為陣列值
6389
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6390
		unset($conf["css::createCssStyle"]);
6391
 
6392
		#如果建立css樣式失敗
6393
		if($createCssStyle["status"]==="false"){
6394
 
6395
			#設置執行失敗
6396
			$result["status"]="false";
6397
 
6398
			#設置執行錯誤訊息
6399
			$result["error"]=$createCssStyle;
6400
 
6401
			#回傳結果
6402
			return $result;
6403
 
6404
			}#if end
6405
 
6406
		#儲存css類別樣式
6407
		$result["content"]=$result["content"].$createCssStyle["content"];
6408
 
6409
		#__qbpwcf_inputSelect
6410
		#函式說明:
6411
		#創建 css 樣式,前面會自動加上「.」.
6412
		#回傳的結果:
6413
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6414
		#$result["css"],css設定內容
6415
		#$result["function"],當前執行的函數
6416
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6417
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6418
		#必填的參數:
6419
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_inputSelect";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6420
		$conf["css::createCssStyle"]["attributes"]=array("height","width","font-size","text-align");#為屬性名稱,須為陣列值
6421
		#$conf["css::createCssStyle"]["attributes"][]="height";
6422
		$conf["css::createCssStyle"]["content"]=array("60px !important","100%","30px","center");#為屬性值,須為陣列值
6423
		#$conf["css::createCssStyle"]["content"][]="50px";
6424
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6425
		unset($conf["css::createCssStyle"]);
6426
 
6427
		#如果建立css樣式失敗
6428
		if($createCssStyle["status"]==="false"){
6429
 
6430
			#設置執行失敗
6431
			$result["status"]="false";
6432
 
6433
			#設置執行錯誤訊息
6434
			$result["error"]=$createCssStyle;
6435
 
6436
			#回傳結果
6437
			return $result;
6438
 
6439
			}#if end
6440
 
6441
		#儲存css類別樣式
6442
		$result["content"]=$result["content"].$createCssStyle["content"];
6443
 
6444
		#__qbpwcf_inputTextCssStyle
6445
		#函式說明:
6446
		#創建 css 樣式,前面會自動加上「.」.
6447
		#回傳的結果:
6448
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6449
		#$result["css"],css設定內容
6450
		#$result["function"],當前執行的函數
6451
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6452
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6453
		#必填的參數:
6454
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_inputTextCssStyle";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6455
		$conf["css::createCssStyle"]["attributes"]=array("width","font-size","margin-left","margin-right");#為屬性名稱,須為陣列值
6456
		$conf["css::createCssStyle"]["content"]=array("100%","30px","auto","auto");#為屬性值,須為陣列值
6457
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6458
		unset($conf["css::createCssStyle"]);
6459
 
6460
		#如果建立css樣式失敗
6461
		if($createCssStyle["status"]==="false"){
6462
 
6463
			#設置執行失敗
6464
			$result["status"]="false";
6465
 
6466
			#設置執行錯誤訊息
6467
			$result["error"]=$createCssStyle;
6468
 
6469
			#回傳結果
6470
			return $result;
6471
 
6472
			}#if end
6473
 
6474
		#儲存css類別樣式
6475
		$result["content"]=$result["content"].$createCssStyle["content"];
6476
 
6477
		#__qbpwcf_inputTextAreaCssStyle
6478
		#函式說明:
6479
		#創建 css 樣式,前面會自動加上「.」.
6480
		#回傳的結果:
6481
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6482
		#$result["css"],css設定內容
6483
		#$result["function"],當前執行的函數
6484
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6485
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6486
		#必填的參數:
6487
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_inputTextAreaCssStyle";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6488
		$conf["css::createCssStyle"]["attributes"]=array("width","height","font-size");#為屬性名稱,須為陣列值
6489
		$conf["css::createCssStyle"]["content"]=array("100%","120px","30px");#為屬性值,須為陣列值
6490
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6491
		unset($conf["css::createCssStyle"]);
6492
 
6493
		#如果建立css樣式失敗
6494
		if($createCssStyle["status"]==="false"){
6495
 
6496
			#設置執行失敗
6497
			$result["status"]="false";
6498
 
6499
			#設置執行錯誤訊息
6500
			$result["error"]=$createCssStyle;
6501
 
6502
			#回傳結果
6503
			return $result;
6504
 
6505
			}#if end
6506
 
6507
		#儲存css類別樣式
6508
		$result["content"]=$result["content"].$createCssStyle["content"];
6509
 
6510
		#__qbpwcf_inputPasswordCssStyle
6511
		#函式說明:
6512
		#創建 css 樣式,前面會自動加上「.」.
6513
		#回傳的結果:
6514
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6515
		#$result["css"],css設定內容
6516
		#$result["function"],當前執行的函數
6517
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6518
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6519
		#必填的參數:
6520
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_inputPasswordCssStyle";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6521
		$conf["css::createCssStyle"]["attributes"]=array("width","font-size","margin-left","margin-right");#為屬性名稱,須為陣列值
6522
		$conf["css::createCssStyle"]["content"]=array("100%","30px","auto","auto");#為屬性值,須為陣列值
6523
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6524
		unset($conf["css::createCssStyle"]);
6525
 
6526
		#如果建立css樣式失敗
6527
		if($createCssStyle["status"]==="false"){
6528
 
6529
			#設置執行失敗
6530
			$result["status"]="false";
6531
 
6532
			#設置執行錯誤訊息
6533
			$result["error"]=$createCssStyle;
6534
 
6535
			#回傳結果
6536
			return $result;
6537
 
6538
			}#if end
6539
 
6540
		#儲存css類別樣式
6541
		$result["content"]=$result["content"].$createCssStyle["content"];
6542
 
6543
		#__qbpwcf_hiddenFormBlank,隱藏表單開始的空白.
6544
		#函式說明:
6545
		#創建 css 樣式,前面會自動加上「.」.
6546
		#回傳的結果:
6547
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6548
		#$result["css"],css設定內容
6549
		#$result["function"],當前執行的函數
6550
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6551
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6552
		#必填的參數:
6553
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_hiddenFormBlank";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6554
		$conf["css::createCssStyle"]["attributes"]=array("padding","margin","display");#為屬性名稱,須為陣列值
6555
		$conf["css::createCssStyle"]["content"]=array("0px","0px","inline");#為屬性值,須為陣列值
6556
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6557
		unset($conf["css::createCssStyle"]);
6558
 
6559
		#如果建立css樣式失敗
6560
		if($createCssStyle["status"]==="false"){
6561
 
6562
			#設置執行失敗
6563
			$result["status"]="false";
6564
 
6565
			#設置執行錯誤訊息
6566
			$result["error"]=$createCssStyle;
6567
 
6568
			#回傳結果
6569
			return $result;
6570
 
6571
			}#if end
6572
 
6573
		#儲存css類別樣式
6574
		$result["content"]=$result["content"].$createCssStyle["content"];
6575
 
6576
		#__qbpwcf_fieldsetCssStyle,給 fieldset 使用的無框線且隱藏的樣式.
6577
		#函式說明:
6578
		#創建 css 樣式,前面會自動加上「.」.
6579
		#回傳的結果:
6580
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6581
		#$result["css"],css設定內容
6582
		#$result["function"],當前執行的函數
6583
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6584
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6585
		#必填的參數:
6586
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_fieldsetCssStyle";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6587
		$conf["css::createCssStyle"]["attributes"]=array("display","padding","margin-left","margin-right","border","border-style","width");#為屬性名稱,須為陣列值
6588
		$conf["css::createCssStyle"]["content"]=array("inline","0px","auto","auto","0px","solid","100%");#為屬性值,須為陣列值
6589
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6590
		unset($conf["css::createCssStyle"]);
6591
 
6592
		#如果建立css樣式失敗
6593
		if($createCssStyle["status"]==="false"){
6594
 
6595
			#設置執行失敗
6596
			$result["status"]="false";
6597
 
6598
			#設置執行錯誤訊息
6599
			$result["error"]=$createCssStyle;
6600
 
6601
			#回傳結果
6602
			return $result;
6603
 
6604
			}#if end
6605
 
6606
		#儲存css類別樣式
6607
		$result["content"]=$result["content"].$createCssStyle["content"];
6608
 
6609
		#__qbpwcf_inputFileCssStyle
6610
		#函式說明:
6611
		#創建 css 樣式,前面會自動加上「.」.
6612
		#回傳的結果:
6613
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6614
		#$result["css"],css設定內容
6615
		#$result["function"],當前執行的函數
6616
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6617
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6618
		#必填的參數:
6619
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_inputFileCssStyle";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6620
		$conf["css::createCssStyle"]["attributes"]=array("width","font-size");#為屬性名稱,須為陣列值
6621
		$conf["css::createCssStyle"]["content"]=array("100%","30px");#為屬性值,須為陣列值
6622
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6623
		unset($conf["css::createCssStyle"]);
6624
 
6625
		#如果建立css樣式失敗
6626
		if($createCssStyle["status"]==="false"){
6627
 
6628
			#設置執行失敗
6629
			$result["status"]="false";
6630
 
6631
			#設置執行錯誤訊息
6632
			$result["error"]=$createCssStyle;
6633
 
6634
			#回傳結果
6635
			return $result;
6636
 
6637
			}#if end
6638
 
6639
		#儲存css類別樣式
6640
		$result["content"]=$result["content"].$createCssStyle["content"];
6641
 
6642
		#__qbpwcf_scrollingListInnerDiv
6643
		#函式說明:
6644
		#創建 css 樣式,前面會自動加上「.」.
6645
		#回傳的結果:
6646
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6647
		#$result["css"],css設定內容
6648
		#$result["function"],當前執行的函數
6649
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6650
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6651
		#必填的參數:
6652
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_scrollingListInnerDiv";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6653
		$conf["css::createCssStyle"]["attributes"]=array("background-color","position","top","left","height","width","overflow-y","border");#為屬性名稱,須為陣列值
6654
		$conf["css::createCssStyle"]["content"]=array("white","fixed","15%","15%","70%","70%","auto","1px solid black");#為屬性值,須為陣列值
6655
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6656
		unset($conf["css::createCssStyle"]);
6657
 
6658
		#如果建立css樣式失敗
6659
		if($createCssStyle["status"]==="false"){
6660
 
6661
			#設置執行失敗
6662
			$result["status"]="false";
6663
 
6664
			#設置執行錯誤訊息
6665
			$result["error"]=$createCssStyle;
6666
 
6667
			#回傳結果
6668
			return $result;
6669
 
6670
			}#if end
6671
 
6672
		#儲存css類別樣式
6673
		$result["content"]=$result["content"].$createCssStyle["content"];
6674
 
6675
		#__qbpwcf_scrollingListRootDiv
6676
		#函式說明:
6677
		#創建 css 樣式,前面會自動加上「.」.
6678
		#回傳的結果:
6679
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6680
		#$result["css"],css設定內容
6681
		#$result["function"],當前執行的函數
6682
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6683
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6684
		#必填的參數:
6685
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_scrollingListRootDiv";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6686
		$conf["css::createCssStyle"]["attributes"]=array("background-color","position","top","left","height","width","z-index");#為屬性名稱,須為陣列值
6687
		$conf["css::createCssStyle"]["content"]=array("gray","fixed","0px","0px","100%","100%","1");#為屬性值,須為陣列值
6688
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6689
		unset($conf["css::createCssStyle"]);
6690
 
6691
		#如果建立css樣式失敗
6692
		if($createCssStyle["status"]==="false"){
6693
 
6694
			#設置執行失敗
6695
			$result["status"]="false";
6696
 
6697
			#設置執行錯誤訊息
6698
			$result["error"]=$createCssStyle;
6699
 
6700
			#回傳結果
6701
			return $result;
6702
 
6703
			}#if end
6704
 
6705
		#儲存css類別樣式
6706
		$result["content"]=$result["content"].$createCssStyle["content"];
6707
 
6708
		#__qbpwcf_scrollingListOutterDiv
6709
		#函式說明:
6710
		#創建 css 樣式,前面會自動加上「.」.
6711
		#回傳的結果:
6712
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6713
		#$result["css"],css設定內容
6714
		#$result["function"],當前執行的函數
6715
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6716
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6717
		#必填的參數:
6718
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_scrollingListOutterDiv";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6719
		$conf["css::createCssStyle"]["attributes"]=array("background-color");#為屬性名稱,須為陣列值
6720
		$conf["css::createCssStyle"]["content"]=array("white");#為屬性值,須為陣列值
6721
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6722
		unset($conf["css::createCssStyle"]);
6723
 
6724
		#如果建立css樣式失敗
6725
		if($createCssStyle["status"]==="false"){
6726
 
6727
			#設置執行失敗
6728
			$result["status"]="false";
6729
 
6730
			#設置執行錯誤訊息
6731
			$result["error"]=$createCssStyle;
6732
 
6733
			#回傳結果
6734
			return $result;
6735
 
6736
			}#if end
6737
 
6738
		#儲存css類別樣式
6739
		$result["content"]=$result["content"].$createCssStyle["content"];
6740
 
6741
		#建立 針對下拉式選單的樣式 div.__qbpwcf_inputSelect_hover:hover 的樣式用來表示 選項移動過去要變成pointer 的樣式
6742
		#函式說明:
6743
		#創建針對html標籤的立即css樣式或限定套用類型的css樣式.
6744
		#回傳的結果:
6745
		#$result["status"],執行是否正常,"true"代表正常;"false"代表不正常.
6746
		#$result["error"],涵式錯誤訊息陣列
6747
		#$result["content"],css語法
6748
		#$result["function"],當前執行的函式名稱.
6749
		#$result["argu"],所使用的參數.
6750
		#必填的參數:
6751
		#$conf["htmlTagName"],字串陣列,為多個要套用樣式的html標籤名稱,若有階層請用「>」表示,ex:「a:hover」代表在<a></a>上滑過去時的樣式;若有從上而下的層級關係,則請用「>」表示,ex:「div>span>img」,就是針對有div標籤裡面的span標籤裡面的img標籤內容的樣式;也可以針對使用特定類別的html標籤來套用css樣式,ex:「div.pink」,就是針對套用pink類別的div標籤來套用css樣式;可以指定擁有特定屬性的標籤與class的元素來套用css樣式,ex:「div['data-selected=true'].specifyClassName」。
6752
		$conf["css::createApplyCssStyle"]["htmlTagName"]=array("div.__qbpwcf_inputSelect_hover:hover");
6753
		#$conf["attributes"],字串陣列,為屬性名稱
6754
		$conf["css::createApplyCssStyle"]["attributes"]=array("background-color","color","cursor");
6755
		#$conf["content"],字串陣列,為屬性值
6756
		$conf["css::createApplyCssStyle"]["content"]=array("silver","blue","pointer");
6757
		$createApplyCssStyle=css::createApplyCssStyle($conf["css::createApplyCssStyle"]);
6758
		unset($conf["css::createApplyCssStyle"]);
6759
 
6760
		#如果建立樣式失敗
6761
		if($createApplyCssStyle["status"]==="false"){
6762
 
6763
			#設置執行失敗
6764
			$result["status"]="false";
6765
 
6766
			#設置執行錯誤訊息
6767
			$result["error"]=$createCssStyle;
6768
 
6769
			#回傳結果
6770
			return $result;
6771
 
6772
			}#if end
6773
 
6774
		#儲存css類別樣式
6775
		$result["content"]=$result["content"].$createApplyCssStyle["content"];
6776
 
6777
		#建立 針對下拉式選單的樣式 div.__qbpwcf_inputSelect_hover 的樣式用來表示 非原本選擇的項目 的樣式
6778
		#函式說明:
6779
		#創建針對html標籤的立即css樣式或限定套用類型的css樣式.
6780
		#回傳的結果:
6781
		#$result["status"],執行是否正常,"true"代表正常;"false"代表不正常.
6782
		#$result["error"],涵式錯誤訊息陣列
6783
		#$result["content"],css語法
6784
		#$result["function"],當前執行的函式名稱.
6785
		#$result["argu"],所使用的參數.
6786
		#必填的參數:
6787
		#$conf["htmlTagName"],字串陣列,為多個要套用樣式的html標籤名稱,若有階層請用「>」表示,ex:「a:hover」代表在<a></a>上滑過去時的樣式;若有從上而下的層級關係,則請用「>」表示,ex:「div>span>img」,就是針對有div標籤裡面的span標籤裡面的img標籤內容的樣式;也可以針對使用特定類別的html標籤來套用css樣式,ex:「div.pink」,就是針對套用pink類別的div標籤來套用css樣式;可以指定擁有特定屬性的標籤與class的元素來套用css樣式,ex:「div['data-selected=true'].specifyClassName」。
6788
		$conf["css::createApplyCssStyle"]["htmlTagName"]=array("div.__qbpwcf_inputSelect_hover");
6789
		#$conf["attributes"],字串陣列,為屬性名稱
6790
		$conf["css::createApplyCssStyle"]["attributes"]=array("background-color");
6791
		#$conf["content"],字串陣列,為屬性值
6792
		$conf["css::createApplyCssStyle"]["content"]=array("white");
6793
		$createApplyCssStyle=css::createApplyCssStyle($conf["css::createApplyCssStyle"]);
6794
		unset($conf["css::createApplyCssStyle"]);
6795
 
6796
		#如果建立樣式失敗
6797
		if($createApplyCssStyle["status"]==="false"){
6798
 
6799
			#設置執行失敗
6800
			$result["status"]="false";
6801
 
6802
			#設置執行錯誤訊息
6803
			$result["error"]=$createCssStyle;
6804
 
6805
			#回傳結果
6806
			return $result;
6807
 
6808
			}#if end
6809
 
6810
		#儲存css類別樣式
6811
		$result["content"]=$result["content"].$createApplyCssStyle["content"];
6812
 
6813
		#建立 針對下拉式選單的樣式 div[data-selected=true].__qbpwcf_inputSelect_hover 的樣式用來表示 原本選擇的項目 的樣式
6814
		#函式說明:
6815
		#創建針對html標籤的立即css樣式或限定套用類型的css樣式.
6816
		#回傳的結果:
6817
		#$result["status"],執行是否正常,"true"代表正常;"false"代表不正常.
6818
		#$result["error"],涵式錯誤訊息陣列
6819
		#$result["content"],css語法
6820
		#$result["function"],當前執行的函式名稱.
6821
		#$result["argu"],所使用的參數.
6822
		#必填的參數:
6823
		#$conf["htmlTagName"],字串陣列,為多個要套用樣式的html標籤名稱,若有階層請用「>」表示,ex:「a:hover」代表在<a></a>上滑過去時的樣式;若有從上而下的層級關係,則請用「>」表示,ex:「div>span>img」,就是針對有div標籤裡面的span標籤裡面的img標籤內容的樣式;也可以針對使用特定類別的html標籤來套用css樣式,ex:「div.pink」,就是針對套用pink類別的div標籤來套用css樣式;可以指定擁有特定屬性的標籤與class的元素來套用css樣式,ex:「div['data-selected=true'].specifyClassName」。
6824
		$conf["css::createApplyCssStyle"]["htmlTagName"]=array("div[data-selected=true].__qbpwcf_inputSelect_hover");
6825
		#$conf["attributes"],字串陣列,為屬性名稱
6826
		$conf["css::createApplyCssStyle"]["attributes"]=array("background-color","color");
6827
		#$conf["content"],字串陣列,為屬性值
6828
		$conf["css::createApplyCssStyle"]["content"]=array("silver","green");
6829
		$createApplyCssStyle=css::createApplyCssStyle($conf["css::createApplyCssStyle"]);
6830
		unset($conf["css::createApplyCssStyle"]);
6831
 
6832
		#如果建立樣式失敗
6833
		if($createApplyCssStyle["status"]==="false"){
6834
 
6835
			#設置執行失敗
6836
			$result["status"]="false";
6837
 
6838
			#設置執行錯誤訊息
6839
			$result["error"]=$createCssStyle;
6840
 
6841
			#回傳結果
6842
			return $result;
6843
 
6844
			}#if end
6845
 
6846
		#儲存css類別樣式
6847
		$result["content"]=$result["content"].$createApplyCssStyle["content"];
6848
 
6849
		#函式說明:
6850
		#創建 css 樣式,前面會自動加上「.」.
6851
		#回傳的結果:
6852
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6853
		#$result["css"],css設定內容
6854
		#$result["function"],當前執行的函數
6855
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6856
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6857
		#必填的參數:
6858
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_hr";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6859
		$conf["css::createCssStyle"]["attributes"]=array("margin-top","margin-bottom","border","border-top-color","border-top-style","border-top-width","border-top");#為屬性名稱,須為陣列值
6860
		$conf["css::createCssStyle"]["content"]=array("20px","20px","0px","currentcolor","none","0px","1px solid");#為屬性值,須為陣列值
6861
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6862
		unset($conf["css::createCssStyle"]);
6863
 
6864
		#如果建立css樣式失敗
6865
		if($createCssStyle["status"]==="false"){
6866
 
6867
			#設置執行失敗
6868
			$result["status"]="false";
6869
 
6870
			#設置執行錯誤訊息
6871
			$result["error"]=$createCssStyle;
6872
 
6873
			#回傳結果
6874
			return $result;
6875
 
6876
			}#if end
6877
 
6878
		#儲存css類別樣式
6879
		$result["content"]=$result["content"].$createCssStyle["content"];
6880
 
6881
		#函式說明:
6882
		#創建 css 樣式,前面會自動加上「.」.
6883
		#回傳的結果:
6884
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6885
		#$result["css"],css設定內容
6886
		#$result["function"],當前執行的函數
6887
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6888
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6889
		#必填的參數:
6890
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_width100P";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6891
		$conf["css::createCssStyle"]["attributes"]=array("width");#為屬性名稱,須為陣列值
6892
		$conf["css::createCssStyle"]["content"]=array("100%");#為屬性值,須為陣列值
6893
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6894
		unset($conf["css::createCssStyle"]);
6895
 
6896
		#如果建立css樣式失敗
6897
		if($createCssStyle["status"]==="false"){
6898
 
6899
			#設置執行失敗
6900
			$result["status"]="false";
6901
 
6902
			#設置執行錯誤訊息
6903
			$result["error"]=$createCssStyle;
6904
 
6905
			#回傳結果
6906
			return $result;
6907
 
6908
			}#if end
6909
 
6910
		#儲存css類別樣式
6911
		$result["content"]=$result["content"].$createCssStyle["content"];
6912
 
6913
		#函式說明:
6914
		#創建 css 樣式,前面會自動加上「.」.
6915
		#回傳的結果:
6916
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6917
		#$result["css"],css設定內容
6918
		#$result["function"],當前執行的函數
6919
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6920
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6921
		#必填的參數:
6922
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_border";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6923
		$conf["css::createCssStyle"]["attributes"]=array("border","border-right-width","border-left-width");#為屬性名稱,須為陣列值
6924
		$conf["css::createCssStyle"]["content"]=array("1px solid","0px","0px");#為屬性值,須為陣列值
6925
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6926
		unset($conf["css::createCssStyle"]);
6927
 
6928
		#如果建立css樣式失敗
6929
		if($createCssStyle["status"]==="false"){
6930
 
6931
			#設置執行失敗
6932
			$result["status"]="false";
6933
 
6934
			#設置執行錯誤訊息
6935
			$result["error"]=$createCssStyle;
6936
 
6937
			#回傳結果
6938
			return $result;
6939
 
6940
			}#if end
6941
 
6942
		#儲存css類別樣式
6943
		$result["content"]=$result["content"].$createCssStyle["content"];
6944
 
6945
		#函式說明:
6946
		#創建 css 樣式,前面會自動加上「.」.
6947
		#回傳的結果:
6948
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6949
		#$result["css"],css設定內容
6950
		#$result["function"],當前執行的函數
6951
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6952
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6953
		#必填的參數:
6954
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_bold";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6955
		$conf["css::createCssStyle"]["attributes"]=array("font-weight");#為屬性名稱,須為陣列值
6956
		$conf["css::createCssStyle"]["content"]=array("bold");#為屬性值,須為陣列值
6957
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6958
		unset($conf["css::createCssStyle"]);
6959
 
6960
		#如果建立css樣式失敗
6961
		if($createCssStyle["status"]==="false"){
6962
 
6963
			#設置執行失敗
6964
			$result["status"]="false";
6965
 
6966
			#設置執行錯誤訊息
6967
			$result["error"]=$createCssStyle;
6968
 
6969
			#回傳結果
6970
			return $result;
6971
 
6972
			}#if end
6973
 
6974
		#儲存css類別樣式
6975
		$result["content"]=$result["content"].$createCssStyle["content"];
6976
 
6977
		#函式說明:
6978
		#創建 css 樣式,前面會自動加上「.」.
6979
		#回傳的結果:
6980
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
6981
		#$result["css"],css設定內容
6982
		#$result["function"],當前執行的函數
6983
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
6984
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
6985
		#必填的參數:
6986
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_alignCenter";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
6987
		$conf["css::createCssStyle"]["attributes"]=array("text-align");#為屬性名稱,須為陣列值
6988
		$conf["css::createCssStyle"]["content"]=array("center");#為屬性值,須為陣列值
6989
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
6990
		unset($conf["css::createCssStyle"]);
6991
 
6992
		#如果建立css樣式失敗
6993
		if($createCssStyle["status"]==="false"){
6994
 
6995
			#設置執行失敗
6996
			$result["status"]="false";
6997
 
6998
			#設置執行錯誤訊息
6999
			$result["error"]=$createCssStyle;
7000
 
7001
			#回傳結果
7002
			return $result;
7003
 
7004
			}#if end
7005
 
7006
		#儲存css類別樣式
7007
		$result["content"]=$result["content"].$createCssStyle["content"];
7008
 
7009
		#函式說明:
7010
		#創建 css 樣式,前面會自動加上「.」.
7011
		#回傳的結果:
7012
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
7013
		#$result["css"],css設定內容
7014
		#$result["function"],當前執行的函數
7015
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
7016
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
7017
		#必填的參數:
7018
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_odd";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
7019
		$conf["css::createCssStyle"]["attributes"]=array("background-color");#為屬性名稱,須為陣列值
7020
		$conf["css::createCssStyle"]["content"]=array("#FFF0F0");#為屬性值,須為陣列值
7021
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
7022
		unset($conf["css::createCssStyle"]);
7023
 
7024
		#如果建立css樣式失敗
7025
		if($createCssStyle["status"]==="false"){
7026
 
7027
			#設置執行失敗
7028
			$result["status"]="false";
7029
 
7030
			#設置執行錯誤訊息
7031
			$result["error"]=$createCssStyle;
7032
 
7033
			#回傳結果
7034
			return $result;
7035
 
7036
			}#if end
7037
 
7038
		#儲存css類別樣式
7039
		$result["content"]=$result["content"].$createCssStyle["content"];
7040
 
7041
		#函式說明:
7042
		#創建 css 樣式,前面會自動加上「.」.
7043
		#回傳的結果:
7044
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
7045
		#$result["css"],css設定內容
7046
		#$result["function"],當前執行的函數
7047
		#$result["error"],涵式錯誤訊息,若爲""則表示沒有錯誤
7048
		#$result["styleName"],字串,$conf["cssStyleName"]的值.
7049
		#必填的參數:
7050
		$conf["css::createCssStyle"]["cssStyleName"]="__qbpwcf_even";#為該 css 樣式的名稱,不能以數字開頭,限定id的css樣式名稱為「樣式名稱.元素名稱」.
7051
		$conf["css::createCssStyle"]["attributes"]=array("background-color");#為屬性名稱,須為陣列值
7052
		$conf["css::createCssStyle"]["content"]=array("#F0FFF0");#為屬性值,須為陣列值
7053
		$createCssStyle=css::createCssStyle($conf["css::createCssStyle"]);
7054
		unset($conf["css::createCssStyle"]);
7055
 
7056
		#如果建立css樣式失敗
7057
		if($createCssStyle["status"]==="false"){
7058
 
7059
			#設置執行失敗
7060
			$result["status"]="false";
7061
 
7062
			#設置執行錯誤訊息
7063
			$result["error"]=$createCssStyle;
7064
 
7065
			#回傳結果
7066
			return $result;
7067
 
7068
			}#if end
7069
 
7070
		#儲存css類別樣式
7071
		$result["content"]=$result["content"].$createCssStyle["content"];
7072
 
7073
		#函式說明:
7074
		#創建針對html標籤的立即css樣式或限定套用類型的css樣式.
7075
		#回傳的結果:
7076
		#$result["status"],執行是否正常,"true"代表正常;"false"代表不正常.
7077
		#$result["error"],涵式錯誤訊息陣列
7078
		#$result["content"],css語法
7079
		#$result["function"],當前執行的函式名稱.
7080
		#$result["argu"],所使用的參數.
7081
		#必填的參數:
7082
		#$conf["htmlTagName"],字串陣列,為多個要套用樣式的html標籤名稱,若有階層請用「>」表示,ex:「a:hover」代表在<a></a>上滑過去時的樣式;若有從上而下的層級關係,則請用「>」表示,ex:「div>span>img」,就是針對有div標籤裡面的span標籤裡面的img標籤內容的樣式;也可以針對使用特定類別的html標籤來套用css樣式,ex:「div.pink」,就是針對套用pink類別的div標籤來套用css樣式;可以指定擁有特定屬性的標籤與class的元素來套用css樣式,ex:「div['data-selected=true'].specifyClassName」。
7083
		$conf["css::createApplyCssStyle"]["htmlTagName"]=array("div.__qbpwcf_even:hover");
7084
		#$conf["attributes"],字串陣列,為屬性名稱
7085
		$conf["css::createApplyCssStyle"]["attributes"]=array("background-color");
7086
		#$conf["content"],字串陣列,為屬性值
7087
		$conf["css::createApplyCssStyle"]["content"]=array("yellow");
7088
		$createApplyCssStyle=css::createApplyCssStyle($conf["css::createApplyCssStyle"]);
7089
		unset($conf["css::createApplyCssStyle"]);
7090
 
7091
		#如果建立css樣式失敗
7092
		if($createApplyCssStyle["status"]==="false"){
7093
 
7094
			#設置執行失敗
7095
			$result["status"]="false";
7096
 
7097
			#設置執行錯誤訊息
7098
			$result["error"]=$createApplyCssStyle;
7099
 
7100
			#回傳結果
7101
			return $result;
7102
 
7103
			}#if end
7104
 
7105
		#儲存css類別樣式
7106
		$result["content"]=$result["content"].$createApplyCssStyle["content"];
7107
 
7108
		#函式說明:
7109
		#創建針對html標籤的立即css樣式或限定套用類型的css樣式.
7110
		#回傳的結果:
7111
		#$result["status"],執行是否正常,"true"代表正常;"false"代表不正常.
7112
		#$result["error"],涵式錯誤訊息陣列
7113
		#$result["content"],css語法
7114
		#$result["function"],當前執行的函式名稱.
7115
		#$result["argu"],所使用的參數.
7116
		#必填的參數:
7117
		#$conf["htmlTagName"],字串陣列,為多個要套用樣式的html標籤名稱,若有階層請用「>」表示,ex:「a:hover」代表在<a></a>上滑過去時的樣式;若有從上而下的層級關係,則請用「>」表示,ex:「div>span>img」,就是針對有div標籤裡面的span標籤裡面的img標籤內容的樣式;也可以針對使用特定類別的html標籤來套用css樣式,ex:「div.pink」,就是針對套用pink類別的div標籤來套用css樣式;可以指定擁有特定屬性的標籤與class的元素來套用css樣式,ex:「div['data-selected=true'].specifyClassName」。
7118
		$conf["css::createApplyCssStyle"]["htmlTagName"]=array("div.__qbpwcf_odd:hover");
7119
		#$conf["attributes"],字串陣列,為屬性名稱
7120
		$conf["css::createApplyCssStyle"]["attributes"]=array("background-color");
7121
		#$conf["content"],字串陣列,為屬性值
7122
		$conf["css::createApplyCssStyle"]["content"]=array("yellow");
7123
		$createApplyCssStyle=css::createApplyCssStyle($conf["css::createApplyCssStyle"]);
7124
		unset($conf["css::createApplyCssStyle"]);
7125
 
7126
		#如果建立css樣式失敗
7127
		if($createApplyCssStyle["status"]==="false"){
7128
 
7129
			#設置執行失敗
7130
			$result["status"]="false";
7131
 
7132
			#設置執行錯誤訊息
7133
			$result["error"]=$createApplyCssStyle;
7134
 
7135
			#回傳結果
7136
			return $result;
7137
 
7138
			}#if end
7139
 
7140
		#儲存css類別樣式
7141
		$result["content"]=$result["content"].$createApplyCssStyle["content"];
7142
 
7143
		#設置執行正常
7144
		$result["status"]="true";
7145
 
7146
		#回傳結果
7147
		return $result;
7148
 
7149
		}#function qbpwcfStyle end	
7150
 
7151
	/*
7152
	#函式說明:
7153
	#建立bootstap樣式的hr
7154
	#回傳結果:
7155
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
7156
	#$result["error"],錯誤訊息.
7157
	#$result["function"],當前執行的函數名稱.
7158
	#$result["content"],語法.
7159
	#$result["argu"],使用的參數.
7160
	#必填參數:
7161
	#$conf["color"],字串,分割線的顏色(#000000~#FFFFFF).
7162
	$conf["color"]="#EEEEEE";
7163
	#可省略參數:
7164
	#$conf["opacity"],字串,是否要透明,預設為"true"代表要,反之為"false".
7165
	#$conf["opacity"]="true".
7166
	#參考資料:
7167
	#無.
7168
	#備註:
7169
	#無.
7170
	*/
7171
	public static function hr(&$conf=array()){
7172
 
7173
		#初始化要回傳的結果
7174
		$result=array();
7175
 
7176
		#取得當前執行的函數名稱
7177
		$result["function"]=__FUNCTION__;
7178
 
7179
		#如果沒有參數
7180
		if(func_num_args()==0){
7181
 
7182
			#設置執行失敗
7183
			$result["status"]="false";
7184
 
7185
			#設置執行錯誤訊息
7186
			$result["error"]="函數".$result["function"]."需要參數";
7187
 
7188
			#回傳結果
7189
			return $result;
7190
 
7191
			}#if end
7192
 
7193
		#取得參數
7194
		$result["argu"]=$conf;
7195
 
7196
		#如果 $conf 不為陣列
7197
		if(gettype($conf)!=="array"){
7198
 
7199
			#設置執行失敗
7200
			$result["status"]="false";
7201
 
7202
			#設置執行錯誤訊息
7203
			$result["error"][]="\$conf變數須為陣列形態";
7204
 
7205
			#如果傳入的參數為 null
7206
			if($conf===null){
7207
 
7208
				#設置執行錯誤訊息
7209
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
7210
 
7211
				}#if end
7212
 
7213
			#回傳結果
7214
			return $result;
7215
 
7216
			}#if end
7217
 
7218
		#檢查參數
7219
		#函式說明:
7220
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
7221
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
7222
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
7223
		#$result["function"],當前執行的函式名稱.
7224
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
7225
		#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
7226
		#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
7227
		#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
7228
		#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
7229
		#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
7230
		#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
7231
		#$result["notNeedVar"],字串陣列,多餘的參數名稱.
7232
		#必填寫的參數:
7233
		#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
7234
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
7235
		#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
7236
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("color");
7237
		#$conf["mustBeFilledVariableType"],爲必填參數的變數陣titleBgColor列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
7238
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("string");
7239
		#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
7240
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
7241
		#可以省略的參數:
7242
		#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
7243
		$conf["variableCheck::checkArguments"]["canBeEmptyString"]="false";
7244
		#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或集合.
7245
		$conf["variableCheck::checkArguments"]["skipableVariableCanNotBeEmpty"]=array("opacity");
7246
		#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
7247
		$conf["variableCheck::checkArguments"]["skipableVariableName"]=array("opacity");
7248
		#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
7249
		$conf["variableCheck::checkArguments"]["skipableVariableType"]=array("string");
7250
		#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
7251
		$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"]=array("true");
7252
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
7253
		#$conf["variableCheck::checkArguments"]["arrayCountEqualCheck"][]=array("target","minWidthWidths","maxWidthWidths");
7254
		#參考資料來源:
7255
		#array_keys=>http://php.net/manual/en/function.array-keys.php
7256
		$checkArguments=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
7257
		unset($conf["variableCheck::checkArguments"]);
7258
 
7259
		#如果檢查參數失敗
7260
		if($checkArguments["status"]==="false"){
7261
 
7262
			#設置執行不正常
7263
			$result["status"]="false";
7264
 
7265
			#設置執行錯誤
7266
			$result["error"]=$checkArguments;
7267
 
7268
			#回傳結果
7269
			return $result;
7270
 
7271
			}#if end
7272
 
7273
		#如果檢查參數不通過
7274
		if($checkArguments["passed"]==="false"){
7275
 
7276
			#設置執行不正常
7277
			$result["status"]="false";
7278
 
7279
			#設置執行錯誤
7280
			$result["error"]=$checkArguments;
7281
 
7282
			#回傳結果
7283
			return $result;
7284
 
7285
			}#if end
7286
 
7287
		#如果要透明
7288
		if($conf["opacity"]==="true"){
7289
 
7290
			#設置為 0.0
7291
			$conf["opacity"]="0.0";
7292
 
7293
			}#if end
7294
 
7295
		#反之	
7296
		else{
7297
			#設置為 1.0
7298
			$conf["opacity"]="1.0";
7299
 
7300
			}#else end
7301
 
7302
		#hr html 語法
7303
		$result["content"]="<hr class='__qbpwcf_hr' style='color:".$conf["color"].";opacity:".$conf["opacity"]."' >";
7304
 
7305
		#設置執行正常 
7306
		$result["status"]="true";
7307
 
7308
		#回傳結果
7309
		return $result;
7310
 
7311
		}#function hr end	
7312
 
7313
	/*
7314
	#函式說明:
7315
	#建立div的frame
7316
	#回傳結果:
7317
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
7318
	#$result["error"],錯誤訊息.
7319
	#$result["function"],當前執行的函數名稱.
7320
	#$result["content"],語法.
7321
	#$result["argu"],使用的參數.
7322
	#必填參數:
7323
	#$conf["containerId"],字串,要放入frame的元素id.
7324
	$conf["containerId"]="";
7325
	#$conf["titleId"],字串,要放置在div frame上放的元素id.
7326
	$conf["titleId"]="";
7327
	#$conf["placeHolderId"],字串,要用來appendChild的frame外層元素id
7328
	$conf["placeHolderId"]="";
7329
	#可省略參數:
7330
	#$conf["vh%"],frmae要占用螢幕多少百分比的高度,數字字串,預設為"70".
7331
	#$conf["vh%"]="70";
7332
	#$conf["titleBgColor"],字串, 表格標題要的背景顏色,預設為"silver",可用"#NNNNNN"表示。
7333
	#$conf["titleBgColor"]="silver";
7334
	#參考資料:
7335
	#無.
7336
	#備註:
7337
	#無.
7338
	*/
7339
	public static function frame(&$conf=array()){
7340
 
7341
		#初始化要回傳的結果
7342
		$result=array();
7343
 
7344
		#取得當前執行的函數名稱
7345
		$result["function"]=__FUNCTION__;
7346
 
7347
		#如果沒有參數
7348
		if(func_num_args()==0){
7349
 
7350
			#設置執行失敗
7351
			$result["status"]="false";
7352
 
7353
			#設置執行錯誤訊息
7354
			$result["error"]="函數".$result["function"]."需要參數";
7355
 
7356
			#回傳結果
7357
			return $result;
7358
 
7359
			}#if end
7360
 
7361
		#取得參數
7362
		$result["argu"]=$conf;
7363
 
7364
		#如果 $conf 不為陣列
7365
		if(gettype($conf)!=="array"){
7366
 
7367
			#設置執行失敗
7368
			$result["status"]="false";
7369
 
7370
			#設置執行錯誤訊息
7371
			$result["error"][]="\$conf變數須為陣列形態";
7372
 
7373
			#如果傳入的參數為 null
7374
			if($conf===null){
7375
 
7376
				#設置執行錯誤訊息
7377
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
7378
 
7379
				}#if end
7380
 
7381
			#回傳結果
7382
			return $result;
7383
 
7384
			}#if end
7385
 
7386
		#檢查參數
7387
		#函式說明:
7388
		#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
7389
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
7390
		#$reuslt["error"],執行不正常結束的錯訊息陣列.
7391
		#$result["function"],當前執行的函式名稱.
7392
		#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
7393
		#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
7394
		#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
7395
		#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
7396
		#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
7397
		#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
7398
		#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
7399
		#$result["notNeedVar"],字串陣列,多餘的參數名稱.
7400
		#必填寫的參數:
7401
		#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
7402
		$conf["variableCheck::checkArguments"]["varInput"]=&$conf;
7403
		#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
7404
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("containerId","titleId","placeHolderId");
7405
		#$conf["mustBeFilledVariableType"],爲必填參數的變數陣titleBgColor列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
7406
		$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("string","string","string");
7407
		#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
7408
		$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
7409
		#可以省略的參數:
7410
		#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
7411
		$conf["variableCheck::checkArguments"]["canBeEmptyString"]="false";
7412
		#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或集合.
7413
		$conf["variableCheck::checkArguments"]["skipableVariableCanNotBeEmpty"]=array("vh%","titleBgColor");
7414
		#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
7415
		$conf["variableCheck::checkArguments"]["skipableVariableName"]=array("vh%","titleBgColor");
7416
		#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
7417
		$conf["variableCheck::checkArguments"]["skipableVariableType"]=array("string","string");
7418
		#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
7419
		$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"]=array("70","silver");
7420
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
7421
		#$conf["variableCheck::checkArguments"]["arrayCountEqualCheck"][]=array("target","minWidthWidths","maxWidthWidths");
7422
		#參考資料來源:
7423
		#array_keys=>http://php.net/manual/en/function.array-keys.php
7424
		$checkArguments=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
7425
		unset($conf["variableCheck::checkArguments"]);
7426
 
7427
		#如果檢查參數失敗
7428
		if($checkArguments["status"]==="false"){
7429
 
7430
			#設置執行不正常
7431
			$result["status"]="false";
7432
 
7433
			#設置執行錯誤
7434
			$result["error"]=$checkArguments;
7435
 
7436
			#回傳結果
7437
			return $result;
7438
 
7439
			}#if end
7440
 
7441
		#如果檢查參數不通過
7442
		if($checkArguments["passed"]==="false"){
7443
 
7444
			#設置執行不正常
7445
			$result["status"]="false";
7446
 
7447
			#設置執行錯誤
7448
			$result["error"]=$checkArguments;
7449
 
7450
			#回傳結果
7451
			return $result;
7452
 
7453
			}#if end
7454
 
7455
		#函式說明:
7456
		#將要執行的script語法透過該函式執行(會在程式外層用<script></script>包起來).
7457
		#回傳結果:
7458
		#$result["status"],執行是否正常,"true"為正常,"false"為不正常.
7459
		#$result["error"],錯誤訊息陣列
7460
		#$result["function"],當前執行的函數名稱
7461
		#$result["content"],要執行的javaScript語法
7462
		#必填的參數:
7463
		#$conf["script"],字串,要執行的javaScript語法.
7464
		$conf["javaScript::toScript"]["script"]=
7465
		"
7466
			//若變數不存在
7467
			if(window.qbpwcf===undefined){
7468
 
7469
				//初始化為空物件
7470
				window.qbpwcf={};
7471
 
7472
				}//if end
7473
 
7474
			//若變數不存在
7475
			if(window.qbpwcf.css===undefined){
7476
 
7477
				//初始化為空物件
7478
				window.qbpwcf.css={};
7479
 
7480
				}//if end
7481
 
7482
			//若變數不存在
7483
			if(window.qbpwcf.css.frame===undefined){
7484
 
7485
				//初始化為空物件
7486
				window.qbpwcf.css.frame={};
7487
 
7488
				}//if end
7489
 
7490
			//初始化儲存 div frame 物件
7491
			window.qbpwcf.css.frame.content={};
7492
 
7493
			//建立 div
7494
			divFrame=document.createElement('div');
7495
 
7496
			//設置 frame 的高度
7497
			divFrame.style.height='".$conf["vh%"]."vh';
7498
			divFrame.style.overflowY='auto';
7499
			divFrame.style.overflowX='hidden';
7500
 
7501
			//取得要放置於 iframe 上方的標題
7502
			title=document.getElementById('".$conf["titleId"]."');
7503
 
7504
			//複製一份
7505
			fakeTitle=title.cloneNode(true);
7506
 
7507
			//隱藏資料表的抬頭
7508
			title.style.opacity=0.0;
7509
 
7510
			//原始標題的樣式
7511
			titleComStyle=getComputedStyle(title.children[0].children[0]);
7512
 
7513
			//標題要放在相位置距離高度有 -XXpx的地方
7514
			titleTop=parseInt(titleComStyle.height)+parseInt(titleComStyle.borderTopWidth)+parseInt(titleComStyle.borderBottomWidth)+parseInt(titleComStyle.paddingTop)+parseInt(titleComStyle.paddingBottom);
7515
 
7516
			//標題要放在相位置距離左邊有 -XXpx的地方
7517
			titleLeft=parseInt(titleComStyle.borderLeftWidth);
7518
 
7519
			//設置假的title樣式,像是真的表格 title
7520
			fakeTitle.style.position='relative';
7521
			fakeTitle.style.top=titleTop+'px';
7522
			fakeTitle.style.left=titleLeft+'px';
7523
			fakeTitle.style.backgroundColor='".$conf["titleBgColor"]."';
7524
 
7525
			//儲存要放置的 divFrameTitle
7526
			window.qbpwcf.css.frame.title=fakeTitle;
7527
 
7528
			//取得要放入 iframe 的內容
7529
			container=document.getElementById('".$conf["containerId"]."');
7530
 
7531
			//放置 container 到 divFrame 裡面
7532
			divFrame.appendChild(container);
7533
 
7534
			//取得要放置 divFrame 地方, divFrame 會 appendChild 該元素
7535
			placeHolder=document.getElementById('".$conf["placeHolderId"]."');
7536
 
7537
			//如果隱藏的資料表抬頭為 <thead>
7538
			if(title.tagName==='THEAD'){
7539
 
7540
				//如果不是 Firefox 瀏覽器
7541
				if(navigator.userAgent.includes('Firefox')===false){
7542
 
7543
					//砍掉之
7544
					title.remove();
7545
 
7546
					}//if end
7547
 
7548
				}//if end	
7549
 
7550
			//儲存要放置的 divFrame
7551
			window.qbpwcf.css.frame.content=divFrame;			
7552
 
7553
			//儲存放置 divFame 的動作
7554
			window.qbpwcf.css.frame.print=function(){
7555
 
7556
				//放置標題到 placeHolder
7557
				placeHolder.appendChild(window.qbpwcf.css.frame.title);
7558
 
7559
				//放置divFrame到placeHolder的動作
7560
				placeHolder.appendChild(window.qbpwcf.css.frame.content);
7561
 
7562
				}//functino end
7563
 
7564
		";
7565
		#可省略參數:
7566
		#$conf["onReady"],字串,是否要在網頁完全載入後再執行,"false"為不等載入完就先執行,預設為"true"要等載入完再執行.
7567
		#$conf["onReady"]="true";
7568
		#$conf["globalJs"],字串陣列,為要放入<script>標籤的js全域變數.
7569
		#$conf["globalJs"]=array();
7570
		#$conf["jsFunciton"],字串陣列,為要放入<script>標籤的js函數.
7571
		#$conf["jsFunciton"]=array();
7572
		#參考資料:
7573
		#http://stackoverflow.com/questions/9899372/pure-javascript-equivalent-to-jquerys-ready-how-to-call-a-function-when-the
7574
		$toScript=javaScript::toScript($conf["javaScript::toScript"]);
7575
		unset($conf["javaScript::toScript"]);
7576
 
7577
		#如果執行失敗
7578
		if($toScript["status"]==="false"){
7579
 
7580
			#設置執行失敗
7581
			$result["status"]="false";
7582
 
7583
			#設置執行錯誤
7584
			$result["error"]=$toScript;
7585
 
7586
			#回傳結果
7587
			return $result;
7588
 
7589
			}#if end
7590
 
7591
		#取得js的內容
7592
		$result["content"]=$toScript["content"];
7593
 
7594
		#設置執行正常
7595
		$result["status"]="true";
7596
 
7597
		#回傳結果
7598
		return $result;
7599
 
7600
		}#function frame end
7601
 
7602
	/*
7603
	#函式說明:
7604
	#建立不會重複的class名稱.
7605
	#回傳結果:
7606
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
7607
	#$result["error"],錯誤訊息.
7608
	#$result["function"],當前執行的函數名稱.
7609
	#$result["content"],語法.
7610
	#必填參數:
7611
	#無.
7612
	#可省略參數:
7613
	#無.
7614
	#參考資料:
7615
	#無.
7616
	#備註:
7617
	#無.
7618
	*/
7619
	public static function uuidClassName(){
7620
 
7621
		#初始化要回傳的結果
7622
		$result=array();
7623
 
7624
		#取得當前執行的函數名稱
7625
		$result["function"]=__FUNCTION__;
7626
 
7627
		#函式說明:
7628
		#使用 linux 的 uuid 指令來產生 uuid 字串
7629
		#回傳結果:
7630
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
7631
		#$result["error"],錯誤訊息.
7632
		#$result["function"],當前執行的函式名稱.
7633
		#必填參數:
7634
		#無.
7635
		#可省略參數:
7636
		#無.
7637
		#參考資料:
7638
		#無.
7639
		#備註:
7640
		#無.
7641
		$uuid=cmd::uuid();
7642
 
7643
		#如果執行失敗
7644
		if($uuid["status"]==="false"){
7645
 
7646
			#設置執行失敗
7647
			$result["status"]="false";
7648
 
7649
			#設置執行錯誤
7650
			$result["error"]=$uuid;
7651
 
7652
			#回傳結果
7653
			return $result;
7654
 
7655
			}#if end
7656
 
7657
		#函式說明:
7658
		#處理字串避免網頁出錯
7659
		#回傳結果:
7660
		#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
7661
		#$result["function"],當前執行的函數.
7662
		#$result["content"],爲處理好的字串.
7663
		#$result["error"],錯誤訊息陣列.
7664
		#$result["argu"],使用的參數. 
7665
		#必填參數:
7666
		#$conf["stringIn"],字串,爲要處理的字串
7667
		$conf["stringProcess::correctCharacter"]["stringIn"]=$uuid["content"];
7668
		#可省略參數:
7669
		#$conf["selectedCharacter"],字串陣列,爲被選擇要處理的字串/字元,須爲陣列值。若不設定則預設爲要將這些字串作替換 ("<",">","=","//","'","$","%","&","|","/*","*","#","\"").特殊字元,「\n」代表換行,「\t」代表tab鍵的間隔
7670
		$conf["stringProcess::correctCharacter"]["selectedCharacter"]=array("-");
7671
		#$conf["changeTo"],字串陣列,爲被選擇的字元要換成什麼字串/字元,須爲陣列值。若不設定,則預設爲更換成""(空字串).
7672
		$conf["stringProcess::correctCharacter"]["changeTo"]=array("_");
7673
		#參考資料:
7674
		#無.
7675
		#備註:
7676
		#無.
7677
		$correctCharacter=stringProcess::correctCharacter($conf["stringProcess::correctCharacter"]);
7678
		unset($conf["stringProcess::correctCharacter"]);
7679
 
7680
		#如果執行失敗
7681
		if($correctCharacter["status"]==="false"){
7682
 
7683
			#設置執行失敗
7684
			$result["status"]="false";
7685
 
7686
			#設置執行錯誤
7687
			$result["error"]=$correctCharacter;
7688
 
7689
			#回傳結果
7690
			return $result;
7691
 
7692
			}#if end
7693
 
7694
		#設置結果
7695
		$result["content"]=$correctCharacter["content"];
7696
 
7697
		#設置執行正常.
7698
		$result["status"]="true";
7699
 
7700
		#回傳結果
7701
		return $result;
7702
 
7703
		}#funcrion uuidClassName end
7704
 
7705
	}#class css end
7706
 
7707
/*
7708
 
7709
針對特定標籤的css樣式=>http://www.w3schools.com/cssref/pr_dim_height.asp
7710
 
7711
使用class 套用 css 樣式
7712
 在同一行顯現資料
7713
 <span class = "樣式名稱">要套用的內容</span>
7714
 換行顯現資料
7715
 <div class = "樣式名稱">要套用的內容</div>
7716
但要注意同名的class樣式其屬性會參考前面的,因此會變成後面沒有設定的屬性,變成有設定且跟前面的屬性一樣。
7717
 
7718
可用的樣式屬性:
7719
 
7720
filter,IE專用的透明度,範圍從.0~1
7721
opacity,透明度,範圍從.0~1。
7722
display:none,不顯示該元件。
7723
 
7724
如果 button 要套用樣式,請在 button 的屬性裡面的 class 設為您要套用的屬性。
7725
用<div class = "您的樣式名稱 "><input type = button></div>,會失敗。
7726
供參考按鈕的樣式屬性
7727
border-width ,外框的厚度
7728
 
7729
供參考字型的樣式屬性
7730
font-family,字體選擇
7731
font-weight,是否要用粗體,若要則其值爲bold
7732
font-style,是否要斜體,若要則其值爲italic
7733
font-size,字型大小,其單位爲px
7734
text-decoration,是否要底線,若要則其值爲underline
7735
text-align,文字水平的排版,若要置中,則其值爲 center
7736
vertical-align,文字垂直的排版,'middle'為置中,'buttom'為置底,'top'為置頂,作用的元素的 display 要為 inline-block 才行呈現 middle.
7737
color,文字顏色,其值爲#000000~#FFFFFF之間。
7738
 
7739
將大於指定長度的變成...顯示
7740
white-space: nowrap;
7741
width: 5em;
7742
overflow: hidden;
7743
text-overflow: ellipsis;
7744
 
7745
供參考的圖片、表格、元素的長與寬樣式
7746
width:圖片的寬度,單位是px或%
7747
height:圖片的高度,單位是px或%
7748
border:外框厚度、顏色,0~Npx solid #aaaaaa
7749
min-width:最小寬度,單位是px;
7750
min-height:最小高度,單位是px;
7751
max-width:最大寬度,單位是px;
7752
min-height:最高寬度,單位是px;
7753
 
7754
供參考的iframe樣式
7755
width:iframe的寬度,單位是px或%
7756
height:iframe的高度,單位是px或%
7757
overflow-x:水平滾軸,若不要顯示滾軸則其值爲hidden
7758
overflow-y:垂直滾軸,若不要顯示滾軸則其值爲hidden
7759
overflow:水平與垂直滾軸,若不要則其值爲hidden
7760
border:外框厚度、顏色,0~Npx solid #aaaaaa
7761
 
7762
設定定位點的樣式
7763
position:位置屬性,
7764
	絕對位置的話,其值爲absolute;
7765
	若是要與上一個元素的定位基礎點則其值爲relative;
7766
	若是要無論畫面如何捲動,目標物件都會在畫面上的固定位置fixed;
7767
top:距離頂部多遠,單位是px
7768
left:距離左邊多遠,單位是px
7769
bottom:距離底部多遠,單位是px
7770
right:距離右邊多遠,單位是px
7771
margin:區塊與上下左右外部的間距,單位可以是「%」、「px」,若值為0px的話,則可以讓<form>後面不出現空白值,若設爲auto爲自動調整,會讓元素至於畫面正中央,尤其套用在表格上特別實用.
7772
	margin-top:區塊與上外部間距,單位可以是「%」、「px」,值若設爲auto爲自動調整,如果與margin-bottom的值都是 auto 的話將會置於網頁上下的中間,如果與margin-bottom margin-left margin-right 的值都是 auto 的話,將會至於網頁正中央。
7773
	margin-bottom:區塊與底外部間距,單位可以是「%」、「px」,值若設爲auto爲自動調整,如果與margin-top的值都是 auto 的話將會置於網頁上下的中間,如果與margin-top margin-left margin-right 的值都是 auto 的話,將會至於網頁正中央。
7774
	margin-left:區塊與左外部間距,單位可以是「%」、「px」,值若設爲auto爲自動調整,如果與margin-right的值都是 auto 的話將會置於網頁左右的中間,如果與margin-top margin-bottom margin-right 的值都是 auto 的話,將會至於網頁正中央。
7775
	margin-right:區塊與右外部間距,單位可以是「%」、「px」,值若設爲auto爲自動調整,如果與margin-left的值都是 auto 的話將會置於網頁左右的中間,如果與margin-top margin-bottom margin-left 的值都是 auto 的話,將會至於網頁正中央。
7776
padding,內容距離外部框架的上下左右距離,單位爲px
7777
	padding-top:15px; 距離上部外部框架的距離,單位爲px
7778
	padding-left:10px; 距離左部外部框架的距離,單位爲px
7779
	padding-right:30px; 距離右部外部框架的距離,單位爲px
7780
	padding-bottom:40px; 距離下部外部框架的距離,單位爲px
7781
 
7782
表格的樣式
7783
border:1px ,框線的厚度,設定上下左右的格線厚度為1px,等同於底下四列的內容.
7784
	border-top:1px ,上部框線的厚度
7785
	border-bottom:1px ,下部框線的厚度
7786
	border-left:1px ,左部框線的厚度
7787
	border-right:1px ,右部框線的厚度
7788
border-style:solid ,外框呈現的方式,可以是 solid(實線)、dashed(虛線)、outset(浮出線 )
7789
border-color:#0000FF ,藍色的框線
7790
table-layout:fixed ,讓內容不能撐破表格,並且讓表格會根據視窗大小改變。
7791
word-break:break-all ,讓在表格裡裏的文字不會超越表格設定的寬度,並且會自動換行。適用於中文字
7792
word-wrap:break-word ,讓在表格裡裏的文字不會超越表格設定的寬度,並且會自動換行。
7793
 
7794
陰影樣式
7795
box-shadow:0px 3px 5px rgba(0, 0, 0, 0.125) inset;
7796
 
7797
背景與網底的樣式
7798
background-color:元素網底的顏色,其值爲#000000到#FFFFFF
7799
background:背景的顏色,其值爲#000000到#FFFFFF
7800
background:url('path2pic');
7801
滿版混純色的背景
7802
background:url('path2pic')";
7803
"width:100%","height:100vh;
7804
"background-color:rgba(255,255,255,0.7)";
7805
"background-blend-mode:"lighten";
7806
 
7807
元素外面的框線
7808
outline:#00FF00 dotted thick;
7809
效果同
7810
outline-color:#00FF00;
7811
outline-style:dotted;
7812
outline-width:thick;
7813
參考資料:http://www.w3school.com.cn/cssref/pr_outline.asp
7814
 
7815
陰影與光暈效果
7816
box-shadow: 0px 3px 5px rgba(0, 0, 0, 0.125) inset;
7817
參數1為光影的x軸位置
7818
參數2為光影的z軸位置
7819
參數3為模糊光影的厚度
7820
參數4為光影的顏色
7821
參數5為光影要在現有區域裡面去顯示(inset),還是現有區域外面顯示(initial)
7822
參考資料:http://www.w3schools.com/cssref/css3_pr_box-shadow.asp
7823
 
7824
依據網頁視窗大小(寬度大於300px但是小於600px)而套用的css樣式
7825
@media [not|only|] screen and (max-width:300px) and (min-width:600px)
7826
{
7827
	div{
7828
	attri:value;
7829
	...
7830
	}
7831
 
7832
	.customDiv{
7833
	attri:value;
7834
	...
7835
	}
7836
	...
7837
}
7838
參考資料:
7839
http://www.w3schools.com/cssref/tryit.asp?filename=trycss3_mediaquery
7840
http://www.w3schools.com/cssref/tryit.asp?filename=trycss3_media_example1
7841
https://hsinyu00.wordpress.com/2011/04/05/mobile-web-media-queries/
7842
https://developer.mozilla.org/en-US/docs/Web/CSS/Media_Queries/Using_media_queries
7843
 
7844
#在目標元素之前加上樣式
7845
p::before
7846
{
7847
	content:head;
7848
}
7849
#在目標元素之後加上樣式
7850
p::after
7851
{
7852
	content:tail;
7853
}
7854
 
7855
動畫的設定
7856
animation-duration: 3s; ,新版瀏覽器都有支援的動畫時間設定.
7857
-webkit-animation-duration: 3s; ,針對以webkit為基底的舊版本網頁瀏覽器來設定動畫的執行時間為3秒鐘.
7858
-moz-animation-duration: 3s; ,針對以moz為基底的舊版本網頁瀏覽器來設定動畫的執行時間為3秒鐘.
7859
-o-animation-duration: 3s; ,針對以o為基底的舊版本網頁瀏覽器來設定動畫的執行時間為3秒鐘.
7860
animation-name: slidein; ,新版瀏覽器都有支援的動畫名稱設定.
7861
-webkit-animation-name: slidein; ,針對以webkit為基底的舊版本網頁瀏覽器來設定動畫的名稱.
7862
-moz-animation-name: slidein; ,針對以moz為基底的舊版本網頁瀏覽器來設定動畫的名稱.
7863
-o-animation-name: slidein; ,針對以o為基底的舊版本網頁瀏覽器來設定動畫的名稱.
7864
animation-iteration-count: infinite; ,讓動畫不斷地重複執行.
7865
-webkit-animation-iteration-count: infinite; ,讓以webkit為基底的網頁瀏覽器動畫不斷地執行.
7866
-moz-animation-iteration-count: infinite; ,讓以moz為基底的網頁瀏覽器動畫不斷地執行.
7867
-o-animation-iteration-count: infinite; ,讓以o為基底的網頁瀏覽器動畫不斷地執行.
7868
animation-direction: ,動畫執行的方式,"alternate"代表來回執行,"normal"代表正常執行.
7869
-webkit-animation-direction: ,讓以webkit為基底的網頁瀏覽器的動畫執行的方式,"alternate"代表來回執行,"normal"代表正常執行.
7870
-moz-animation-direction: ,讓以moz為基底的網頁瀏覽器的動畫執行的方式,"alternate"代表來回執行,"normal"代表正常執行.
7871
-o-animation-animation-direction: ,讓以o為基底的網頁瀏覽器的動畫執行的方式,"alternate"代表來回執行,"normal"代表正常執行.
7872
animation-delay: 2s; ,延遲執行動畫
7873
-webkit-animation-delay: 2s; ,讓以webkit為基底的網頁瀏覽器延遲執行動畫
7874
-moz-animation-delay: 2s; ,讓以moz為基底的網頁瀏覽器延遲執行動畫
7875
-o-animation-delay: 2s; ,讓以o為基底的網頁瀏覽器延遲執行動畫
7876
animation-timing-function: linear; ,動畫執行過程等速執行,若為"ease"則代表起始與結尾最慢,中間最快.
7877
-webkit-animation-timing-function: linear; ,讓以webkit為基底的網頁瀏覽器其動畫執行過程等速執行
7878
-moz-animation-timing-function: linear; ,讓以moz為基底的網頁瀏覽器其動畫執行過程等速執行
7879
-o-animation-timing-function: linear; ,讓以o為基底的網頁瀏覽器其動畫執行過程等速執行
7880
 
7881
跟移動有關的css屬性
7882
transform: translate(x,y); ,變更物件的位置到x,y
7883
-webkit-transform: translate(x,y); ,讓以webkit為基底的網頁瀏覽器變更物件的位置到x,y
7884
-moz-transform: translate(x,y); ,讓以moz為基底的網頁瀏覽器變更物件的位置到x,y
7885
-o-transform: translate(x,y); ,讓以o為基底的網頁瀏覽器變更物件的位置到x,y
7886
transform: translate3d(x,y,z); ,變更物件的位置到x,y,z
7887
-webkit-transform: translate3d(x,y,z); ,讓以webkit為基底的網頁瀏覽器變更物件的位置到x,y,z
7888
-moz-transform: translate3d(x,y,z); ,讓以moz為基底的網頁瀏覽器變更物件的位置到x,y,z
7889
-o-transform: translate3d(x,y,z); ,讓以o為基底的網頁瀏覽器變更物件的位置到x,y,z
7890
transform: rotate(45deg); ,變更物件的順時選擇角度
7891
 
7892
參考資料:
7893
https://developer.mozilla.org/en-US/docs/Web/CSS/transform-function/rotate
7894
http://www.weblife.tw/posts_detail.php?pcde=5306bba75eb1d&m_link=index 表格置中的方法
7895
http://blog.kkbruce.net/2009/10/css-margin.html#.VJpqCDAAg 元素置中的方法
7896
http://benlibra.blogspot.tw/2011/04/css.html css套用中文字體的方式
7897
 
7898
//閃爍的動畫 - start
7899
.flashing
7900
{
7901
	animation-duration: 3s;
7902
	animation-name: "flashing";
7903
	animation-iteration-count: infinite;
7904
	animation-direction: "normal";
7905
	animation-delay: 3s;
7906
	animation-timing-function: linear;
7907
}
7908
@keyframes flashing 
7909
{
7910
	0%
7911
	{
7912
		border-color:blue;
7913
		border-style:dashed;
7914
		border-width:3px;
7915
	}
7916
	50%
7917
	{
7918
		border-color:red;
7919
		border-style:dashed;
7920
		border-width:3px;
7921
	}
7922
	100%
7923
	{
7924
		border-color:yellow;
7925
		border-style:dashed;
7926
		border-width:3px;
7927
	}
7928
}
7929
//閃爍的動畫 - end
7930
 
7931
滿版(one page)的屬性,裏面的元素只能單行.多一行就增加one page.
7932
height: 100vh;
7933
line-height: 100vh;
7934
width: 100vw;
7935
 
7936
用flex讓裡面讀元素都上下左右置中,超過滾軸的內容會看不到.
7937
display:flex;
7938
align-items:center;
7939
justify-content:center;
7940
裡面的div元素若要維持寬度則要手動設置
7941
width:100%;
7942
 
7943
讓 positoion:fixed 的元素左右置中
7944
position:fixed;
7945
bottom:0px;
7946
top:0px;
7947
right:0px;
7948
left:0xp;
7949
 
7950
讓div的內容置中,有設定寬度就可以透過margin來置中
7951
max-width:90vw;
7952
margin-left:auto;
7953
margin-right:auto;
7954
 
7955
span to div
7956
display:block;
7957
dived span to span;
7958
display:inline;
7959
 
7960
div to span
7961
display:inline-block;
7962
spaned div to div
7963
display:block;
7964
 
7965
順時針旋轉一圈
7966
rotate:1.0turn;
7967
 
7968
實體表格線條,圓弧角
7969
border-style:solid;
7970
border-width:1px;
7971
border-radius:3px;
7972
 
7973
各種符號
7974
參考資料:
7975
https://www.toptal.com/designers/htmlarrows/
7976
 
7977
th有rowspan屬性,但不包含rowpan="1"者
7978
th[rowspan]:not([rowspan="1"]) {
7979
    vertical-align : middle;
7980
}
7981
 
7982
*/
7983
 
7984
?>