Subversion Repositories qbpwcf-lib(archive)

Rev

Rev 915 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1 liveuser 1
<?php
2
 
3
#跟檢查變數有關的類別
4
namespace qbpwcf;
5
 
6
#匯入外部套件
7
include("../allInOne.php");
8
 
9
/*
10
 
11
#提示正在測試的方法
12
echo"<hr>variableCheck::isexistMuti<p>";
13
 
14
#測試用的陣列
15
$test["name"]="Jeff";
16
$test["gender"]="male";
17
$test["age"]=18;
18
$test["other"]=array("Taiwan","fedora","php");
19
 
20
#echo $ageype=gettype($test["age"]);
21
 
22
#涵式說明:
23
#檢查陣列裡面的特定元素是否存在,如果沒有設定則給與提示訊息。
24
#回傳的結果:
25
#$result...
26
#必填寫的參數:
27
$conf["varInput"]=$test;#要檢查的陣列變數
28
$conf["variableCheck"]=array("name","gender","age","other");#要檢查的變數名稱陣列,形態爲陣列變數,例如: $conf["variableCheck"] = array("id","account","password");
29
#可以省略的參數:
30
$conf["variableType"]=array("string","string","integer","array");#要檢查的陣列變數內的元素應該爲何種變數形態,形態爲陣列 例如: $conf[variableType] = array("string","int","double"); 
31
#var_dump(variableCheck::isexistMuti($conf));
32
unset($conf);
33
 
34
#除測試用變數
35
unset($test);
36
 
37
*/
38
 
39
/*
40
 
41
#提示正在測試的方法
42
echo"<hr>variableCheck::checkType<p>";
43
 
44
#測試用地變數
45
$id=array(1,2,3);
46
 
47
#函式說明:
48
#檢查變數的形態是否正確
49
#回傳的結果:
50
#$result,若爲0則表示形態正確,反之形態有誤。
51
#必填的參數:
52
$conf["vName"]=$id;#要檢查的變數
53
$conf["vType"]="array";#變數的形態
54
#var_dump(variableCheck::checkType($conf));
55
unset($conf);
56
 
57
*/
58
 
59
/*
60
 
61
#提示正在測試的方法
62
echo"<hr>variableCheck::computeIsset - testCase 1<p>";
63
 
64
#測試用的變數
65
$inputArray["no"]=12;
66
$inputArray["name"]="Pop";
67
$inputArray["color"]="red";
68
 
69
#涵式說明:
70
#檢查一個陣列變數裏面含有指定key的元素共有個
71
#回傳的結果:
72
#$result,爲總共找到幾個不是空值的數量 
73
#必填的參數:
74
$conf["conditionValue"]=array("name","age");#想要調查具有該名稱的陣列元素,須為陣列值
75
$conf["inputArray"]=$inputArray;#想要檢查的陣列變數,須為陣列值
76
var_dump(variableCheck::computeIsset($conf));
77
unset($conf);
78
 
79
*/
80
 
81
/*
82
 
83
#提示正在測試的方法
84
echo"<hr>variableCheck::checkElementExistFromAnArray - testCase 1<p>";
85
 
86
#涵式說明:
87
#檢查某個元素是否存在於該一維陣列變數裏面
88
#回傳的結果:
89
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
90
#$reuslt["error"],執行不正常結束的錯訊息陣列.
91
#$result["function"],當前執行的函式名稱.
92
#$result["founded"],"true",表示該元素已經存在於該一維陣列變數裏面,"false"表示該元素不存在於該一維陣列變數裏面	.
93
#必填寫的參數:
94
$conf["searchString"]="fedora";#要搜尋的元素內容
95
$conf["searchArray"]=array("ubuntu","debian","fedora","redhat");#要搜尋的陣列變數		
96
var_dump(variableCheck::checkElementExistFromAnArray($conf));
97
unset($conf);
98
 
99
*/
100
 
101
/*
102
 
103
#提示正在測試的方法
104
echo"<hr>variableCheck::checkElementExistFromAnArray - testCase 2<p>";
105
 
106
#涵式說明:
107
#檢查某個元素是否存在於該一維陣列變數裏面
108
#回傳的結果:
109
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
110
#$reuslt["error"],執行不正常結束的錯訊息陣列.
111
#$result["function"],當前執行的函式名稱.
112
#$result["founded"],"true",表示該元素已經存在於該一維陣列變數裏面,"false"表示該元素不存在於該一維陣列變數裏面	.
113
#必填寫的參數:
114
$conf["searchString"]="openSuse";#要搜尋的元素內容
115
$conf["searchArray"]=array("ubuntu","debian","fedora","redhat");#要搜尋的陣列變數		
116
var_dump(variableCheck::checkElementExistFromAnArray($conf));
117
unset($conf);
118
 
119
*/
120
 
121
/*
122
 
123
#提示正在測試的方法
124
echo"<hr>variableCheck::assignSessionValueToVar - testCase 1<p>";
125
 
126
#測試用的變數
127
$_SESSION["key1"]["key2"]["key3"]="key1to3";
128
 
129
#涵式說明:
130
#判斷三維的session變數 $_SESSION["key1"]["key2"]["key3"]... 是否存在,如果存在就將其數值回傳,反之則回傳指定的數值。		
131
#必填的參數:
132
$conf["sessionName"]=array("key1","key2","key3");#要取得的session變數名稱,須爲陣列字串值。$conf["sessionName"][0]對應的是session變數的第1個key;$conf["sessionName"][1]對應的是session變數的第2個key;$conf["sessionName"][2]對應的是session變數的第3個key。
133
#可省略的參數:
134
#$conf["ifEmptyThenSet"]="";#如果目標session變數不存在,則指派爲什麼樣的數值給目標變數?預設爲""
135
#$conf["unsetSessionVar"]="true";#是否要在指派完變數之後將該sesssion變數卸除,設爲"true",表示要。
136
var_dump(variableCheck::assignSessionValueToVar($conf));
137
unset($conf);
138
 
139
var_dump($_SESSION["key1"]["key2"]["key3"]);
140
 
141
*/
142
 
143
/*
144
 
145
#提示正在測試的方法
146
echo"<hr>variableCheck::assignSessionValueToVar - testCase 2<p>";
147
 
148
#測試用的變數
149
$_SESSION["key1"]=array(
150
	'key2'=>array(
151
		'key3'=>'key1to3'
152
		)
153
	);
154
 
155
#涵式說明:
156
#判斷三維的session變數 $_SESSION["key1"]["key2"]["key3"]... 是否存在,如果存在就將其數值回傳,反之則回傳指定的數值。		
157
#必填的參數:
158
$conf["sessionName"]=array("key1","key2","key3");#要取得的session變數名稱,須爲陣列字串值。$conf["sessionName"][0]對應的是session變數的第1個key;$conf["sessionName"][1]對應的是session變數的第2個key;$conf["sessionName"][2]對應的是session變數的第3個key。
159
#可省略的參數:
160
#$conf["ifEmptyThenSet"]="";#如果目標session變數不存在,則指派爲什麼樣的數值給目標變數?預設爲""
161
$conf["unsetSessionVar"]="true";#是否要在指派完變數之後將該sesssion變數卸除,設爲"true",表示要。
162
var_dump(variableCheck::assignSessionValueToVar($conf));
163
unset($conf);
164
 
165
var_dump($_SESSION);
166
 
167
*/
168
 
169
/*
170
 
171
#提示正在測試的方法
172
echo"<hr>variableCheck::assignSessionValueToVar - testCase 3<p>";
173
 
174
#涵式說明:
175
#判斷三維的session變數 $_SESSION["key1"]["key2"]["key3"]... 是否存在,如果存在就將其數值回傳,反之則回傳指定的數值。		
176
#必填的參數:
177
$conf["sessionName"]=array("key1","key2","key3");#要取得的session變數名稱,須爲陣列字串值。$conf["sessionName"][0]對應的是session變數的第1個key;$conf["sessionName"][1]對應的是session變數的第2個key;$conf["sessionName"][2]對應的是session變數的第3個key。
178
#可省略的參數:
179
$conf["ifEmptyThenSet"]="unset";#如果目標session變數不存在,則指派爲什麼樣的數值給目標變數?預設爲""
180
#$conf["unsetSessionVar"]="true";#是否要在指派完變數之後將該sesssion變數卸除,設爲"true",表示要。
181
var_dump(variableCheck::assignSessionValueToVar($conf));
182
unset($conf);
183
 
184
*/
185
 
186
/*
187
 
188
#提示正在測試的方法
189
echo"<hr>variableCheck::assignVarToSessionValue - testCase 1<p>";
190
 
191
#測試用的變數
192
$var="varValue";
193
 
194
#涵式說明:
195
#判斷變數是否存在,將之儲存到session變數裏面
196
#回傳結果:
197
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
198
#$reuslt["error"],執行不正常結束的錯訊息陣列.
199
#$result["function"],當前執行的函式名稱.
200
#$result["founded"],變數是否存在,"true"為存在,"false"為不存在.	
201
#必填的參數:
202
#$conf["var"],參考變數,想要確認是否存在的變數
203
$conf["var"]=&$var;
204
#$conf["sessionVarName"],陣列字串,要將變數存到key為什麼的session多維變數裏面
205
$conf["sessionVarName"]=array("L1","L2","L3");
206
#備註:
207
#要改寫成可以依據 $conf["sessionVarName"] 元素數量建立多維的session變數
208
var_dump(variableCheck::assignVarToSessionValue($conf));
209
unset($conf);  
210
 
211
#看session變數是否建立成功
212
var_dump($_SESSION);
213
 
214
*/
215
 
216
/*
217
 
218
#提示正在測試的方法
219
echo"<hr>variableCheck::assignVarToSessionValue - testCase 2<p>";
220
 
221
#涵式說明:
222
#判斷變數是否存在,將之儲存到session變數裏面
223
#回傳結果:
224
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
225
#$reuslt["error"],執行不正常結束的錯訊息陣列.
226
#$result["function"],當前執行的函式名稱.
227
#$result["founded"],變數是否存在,"true"為存在,"false"為不存在.	
228
#必填的參數:
229
#$conf["var"],參考變數,想要確認是否存在的變數
230
$conf["var"]=&$var;
231
#$conf["sessionVarName"],陣列字串,要將變數存到key為什麼的session多維變數裏面
232
$conf["sessionVarName"]=array("L1","L2","L3");
233
#備註:
234
#要改寫成可以依據 $conf["sessionVarName"] 元素數量建立多維的session變數
235
var_dump(variableCheck::assignVarToSessionValue($conf));
236
unset($conf);  
237
 
238
#看session變數是否建立成功
239
var_dump($_SESSION);
240
 
241
*/
242
 
243
/*
244
 
245
#提示正在測試的方法
246
echo"<hr>variableCheck::assignVarToSessionValue - testCase 3<p>";
247
 
248
$variableCheck_assignVarToSessionValue_testCase_3="vat3";
249
 
250
#涵式說明:
251
#判斷變數是否存在,將之儲存到session變數裏面
252
#回傳結果:
253
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
254
#$reuslt["error"],執行不正常結束的錯訊息陣列.
255
#$result["function"],當前執行的函式名稱.
256
#$result["founded"],變數是否存在,"true"為存在,"false"為不存在.
257
#必填的參數:
258
#$conf["var"],參考變數,想要確認是否存在的變數
259
$conf["var"]=&$variableCheck_assignVarToSessionValue_testCase_3;
260
#$conf["sessionVarName"],陣列字串,要將變數存到key為什麼的session多維變數裏面
261
$conf["sessionVarName"]=array("variableCheck","assignVarToSessionValue","testCase","3");
262
#備註:
263
#要改寫成可以依據 $conf["sessionVarName"] 元素數量建立多維的session變數
264
$assignVarToSessionValue=variableCheck::assignVarToSessionValue($conf);
265
unset($conf);
266
 
267
#如果運行失敗
268
if($assignVarToSessionValue["status"]==="false"){
269
 
270
	#印出內容
271
	var_dump($assignVarToSessionValue);
272
 
273
	#結束執行
274
	exit;
275
 
276
	}#if end
277
 
278
$variableCheck_assignVarToSessionValue_testCase_3_1="vat3_1";	
279
 
280
#涵式說明:
281
#判斷變數是否存在,將之儲存到session變數裏面
282
#回傳結果:
283
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
284
#$reuslt["error"],執行不正常結束的錯訊息陣列.
285
#$result["function"],當前執行的函式名稱.
286
#$result["founded"],變數是否存在,"true"為存在,"false"為不存在.
287
#必填的參數:
288
#$conf["var"],參考變數,想要確認是否存在的變數
289
$conf["var"]=&$variableCheck_assignVarToSessionValue_testCase_3_1;
290
#$conf["sessionVarName"],陣列字串,要將變數存到key為什麼的session多維變數裏面
291
$conf["sessionVarName"]=array("variableCheck","assignVarToSessionValue","testCase","3_1");
292
#備註:
293
#要改寫成可以依據 $conf["sessionVarName"] 元素數量建立多維的session變數
294
$assignVarToSessionValue=variableCheck::assignVarToSessionValue($conf);
295
unset($conf);
296
 
297
#如果運行失敗
298
if($assignVarToSessionValue["status"]==="false"){
299
 
300
	#印出內容
301
	var_dump($assignVarToSessionValue);
302
 
303
	#結束執行
304
	exit;
305
 
306
	}#if end
307
 
308
#debug
309
#var_dump($_SESSION);
310
 
311
*/
312
 
313
/*
314
 
315
#提示正在測試的方法
316
echo"<hr>variableCheck::checkSkipableVarType - testCase1<p>";
317
 
318
#測試用的陣列
319
$test["name"]="Jeff";
320
$test["gender"]=2;
321
$test["other"]=array("Taiwan","fedora","php");
322
 
323
#函式說明:
324
#檢查一包含數個可省略變數的陣列變數,其型態是否正確
325
#回傳的結果:
326
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
327
#$result["error"],錯誤訊息陣列.
328
#$result["content"],哪個可省略參數的型態不正確.
329
#必填的參數:
330
#$conf["variableCheck"]["checkSkipableVarType"]["checkedVar"],陣列,要檢查的變數陣列名稱為?
331
$conf["variableCheck"]["checkSkipableVarType"]["checkedVar"]=$test;
332
#$conf["variableCheck"]["checkSkipableVarType"]["sikpableVarNameArray"],字串陣列,要檢查型態是否設定正確的變數名稱陣列.
333
$conf["variableCheck"]["checkSkipableVarType"]["sikpableVarNameArray"]=array("people","name","gender","age","other","money","falseName");
334
#$conf["variableCheck"]["checkSkipableVarType"]["skipableVarTypeArray"],字串陣列,要檢查的每個變數,其型態應該要為何?
335
$conf["variableCheck"]["checkSkipableVarType"]["skipableVarTypeArray"]=array("string","string","integer","integer","array","string","string");
336
#$argu,要直接存取的陣列變數名稱
337
$argu=&$test;
338
#可省略參數:
339
#$conf["variableCheck"]["checkSkipableVarType"]["skipableVarDefaultValue"],字串陣列,每個不存的變數要初始化為什麼,"null"代表不指定.
340
$conf["variableCheck"]["checkSkipableVarType"]["skipableVarDefaultValue"]=array("4",null,null,null,null,"1000","false");
341
variableCheck::checkSkipableVarType($conf["variableCheck"]["checkSkipableVarType"],$argu);
342
unset($conf["variableCheck"]);
343
#var_dump($conf);
344
 
345
var_dump($test);
346
 
347
*/
348
 
349
/*
350
 
351
#提示正在測試的方法
352
echo"<hr>variableCheck::checkArguments - testCase 1<p>";
353
 
354
$arguments["mustBeFilled.A"]="123";
355
$arguments["mustBeFilled.B"]=123;
356
$arguments["mustBeFilled.C"]=array(1,2,3);
357
#$arguments["skipable.D"]="321";
358
#$arguments["skipable.E"]=321;
359
#$arguments["skipable.F"]=array(1,2,3);
360
#$arguments["skipable.G"]=array(array(3),array(2),array(1));
361
 
362
#函式說明:
363
#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
364
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
365
#$reuslt["error"],執行不正常結束的錯訊息陣列.
366
#$result["function"],當前執行的函式名稱.
367
#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
368
#$result[$shouldBtCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
369
#$result[$shouldBtCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
370
#$result[$shouldBtCheckedVarName]["error"],每個參數設定的錯誤訊息
371
#必填寫的參數:
372
#$conf["varInput"],陣列變數,要檢查的陣列變數.
373
$conf["varInput"]=&$arguments;
374
#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
375
$conf["mustBeFilledVariableName"]=array("mustBeFilled.A","mustBeFilled.B","mustBeFilled.C");
376
#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列 例如: $conf["mustBeFilledVariableType"] = array("string","integer","double"); 
377
$conf["mustBeFilledVariableType"]=array("string","integer","array");
378
#可以省略的參數:
379
#$conf["canBeEmptyString"],必填變數內容如果是空字串就不能算是有設置的話,請設為"false"。
380
#$conf["canBeEmptyString"]="false";
381
#$conf["skipableVariableName"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
382
$conf["skipableVariableName"]=array("skipable.D","skipable.E","skipable.F","skipable.G");
383
#$conf["skipableVariableType"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string","integer","double"); 
384
$conf["skipableVariableType"]=array("string","integer","array","array");
385
#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null代表不指定.
386
$conf["skipableVarDefaultValue"]=array(null,321,$arguments["mustBeFilled.C"],array(array(3),array(2),array(1)));
387
$result=variableCheck::checkArguments($conf);
388
unset($conf);
389
 
390
#檢查結果
391
#var_dump($result);
392
 
393
#檢查參數
394
var_dump($arguments);
395
 
396
*/
397
 
398
/*
399
 
400
#提示正在測試的方法
401
echo"<hr>variableCheck::checkArguments - testCase 2<p>";
402
 
403
#要測試的參數
404
$checkVar=array();
405
 
406
#必填的參數
407
$checkVar["place"]=array(" ");
408
$checkVar["account"]=array(" ");
409
$checkVar["selectedDataBaseName"]=array(" ");
410
$checkVar["selectedDataTableName"]=array(" ");
411
 
412
#可省略的參數
413
$checkVar["columnShowed"]=array("a","b","c");
414
$checkVar["linkColumnName"]=array("id");
415
$checkVar["operationShowed"]=array("...","add","edit","erase");
416
 
417
#檢查參數
418
#函式說明:
419
#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
420
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
421
#$reuslt["error"],執行不正常結束的錯訊息陣列.
422
#$result["function"],當前執行的函式名稱.
423
#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
424
#$result[$shouldBtCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
425
#$result[$shouldBtCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
426
#$result[$shouldBtCheckedVarName]["error"],每個參數設定的錯誤訊息
427
#必填寫的參數:
428
#$conf["varInput"],陣列變數,要檢查的陣列變數.
429
$conf["variableCheck.checkArguments"]["varInput"]=&$checkVar;
430
#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
431
$conf["variableCheck.checkArguments"]["mustBeFilledVariableName"][]="place";
432
$conf["variableCheck.checkArguments"]["mustBeFilledVariableName"][]="account";
433
$conf["variableCheck.checkArguments"]["mustBeFilledVariableName"][]="selectedDataBaseName";
434
$conf["variableCheck.checkArguments"]["mustBeFilledVariableName"][]="selectedDataTableName";
435
#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列 例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double"); 
436
$conf["variableCheck.checkArguments"]["mustBeFilledVariableType"][]="array";
437
$conf["variableCheck.checkArguments"]["mustBeFilledVariableType"][]="array";
438
$conf["variableCheck.checkArguments"]["mustBeFilledVariableType"][]="array";
439
$conf["variableCheck.checkArguments"]["mustBeFilledVariableType"][]="array";
440
#可以省略的參數:
441
#$conf["variableCheck.checkArguments"]["canBeEmptyString"],必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"false"。
442
$conf["variableCheck.checkArguments"]["canBeEmptyString"]="false";
443
#$conf["variableCheck.checkArguments"]["skipableVariableName"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
444
$conf["variableCheck.checkArguments"]["skipableVariableName"][]="columnYouWant";
445
$conf["variableCheck.checkArguments"]["skipableVariableName"][]="columnShowed";
446
$conf["variableCheck.checkArguments"]["skipableVariableName"][]="columnTitleName";
447
$conf["variableCheck.checkArguments"]["skipableVariableName"][]="operationDefaultShowed";
448
$conf["variableCheck.checkArguments"]["skipableVariableName"][]="hiddenLinkVarName";
449
$conf["variableCheck.checkArguments"]["skipableVariableName"][]="operationVarName";
450
$conf["variableCheck.checkArguments"]["skipableVariableName"][]="operationShowed";
451
$conf["variableCheck.checkArguments"]["skipableVariableName"][]="operationVarValue";
452
$conf["variableCheck.checkArguments"]["skipableVariableName"][]="operationActionPage";
453
$conf["variableCheck.checkArguments"]["skipableVariableName"][]="operationTarget";
454
$conf["variableCheck.checkArguments"]["skipableVariableName"][]="parentTableIdColumnName";
455
#$conf["variableCheck.checkArguments"]["skipableVariableType"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double"); 
456
$conf["variableCheck.checkArguments"]["skipableVariableType"][]="array";
457
$conf["variableCheck.checkArguments"]["skipableVariableType"][]="array";
458
$conf["variableCheck.checkArguments"]["skipableVariableType"][]="array";
459
$conf["variableCheck.checkArguments"]["skipableVariableType"][]="string";
460
$conf["variableCheck.checkArguments"]["skipableVariableType"][]="array";
461
$conf["variableCheck.checkArguments"]["skipableVariableType"][]="string";
462
$conf["variableCheck.checkArguments"]["skipableVariableType"][]="array";
463
$conf["variableCheck.checkArguments"]["skipableVariableType"][]="array";
464
$conf["variableCheck.checkArguments"]["skipableVariableType"][]="string";
465
$conf["variableCheck.checkArguments"]["skipableVariableType"][]="string";
466
$conf["variableCheck.checkArguments"]["skipableVariableType"][]="string";
467
#$conf["variableCheck.checkArguments"]["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,"null"代表不指定.
468
$conf["variableCheck.checkArguments"]["skipableVarDefaultValue"][]=array(array("id","name"));
469
$conf["variableCheck.checkArguments"]["skipableVarDefaultValue"][]=array(array("name"));
470
$conf["variableCheck.checkArguments"]["skipableVarDefaultValue"][]=$checkVar["columnShowed"];
471
$conf["variableCheck.checkArguments"]["skipableVarDefaultValue"][]="請選擇";
472
$conf["variableCheck.checkArguments"]["skipableVarDefaultValue"][]=$checkVar["linkColumnName"];
473
$conf["variableCheck.checkArguments"]["skipableVarDefaultValue"][]="action";
474
$conf["variableCheck.checkArguments"]["skipableVarDefaultValue"][]=array("請選擇","修改","移除");
475
$conf["variableCheck.checkArguments"]["skipableVarDefaultValue"][]=$checkVar["operationShowed"];
476
$conf["variableCheck.checkArguments"]["skipableVarDefaultValue"][]="action.php";
477
$conf["variableCheck.checkArguments"]["skipableVarDefaultValue"][]="_top";
478
$conf["variableCheck.checkArguments"]["skipableVarDefaultValue"][]="id";
479
$checkResult=variableCheck::checkArguments($conf["variableCheck.checkArguments"]);
480
unset($conf["variableCheck.checkArguments"]);	
481
 
482
#檢查結果
483
#var_dump($checkResult);
484
 
485
#檢查可省略的參數有無出現
486
var_dump($checkVar);
487
 
488
*/
489
 
490
/*
491
 
492
#提示正在測試的方法
493
echo"<hr>variableCheck::checkArguments - testCase 3<p>";
494
 
495
#要測試的參數
496
$checkVar=array();
497
 
498
#必填的參數
499
$checkVar["place"]=array(" ");
500
$checkVar["account"]=array(" ");
501
 
502
#可省略的參數
503
#$checkVar["linkColumnName"]=array("id");
504
$checkVar["operationShowed"]=array("...","add","edit","erase");
505
#$checkVar["var1"];
506
#$checkVar["var2"];
507
 
508
#函式說明:
509
#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
510
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
511
#$reuslt["error"],執行不正常結束的錯訊息陣列.
512
#$result["function"],當前執行的函式名稱.
513
#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
514
#$result[$shouldBtCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
515
#$result[$shouldBtCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
516
#$result[$shouldBtCheckedVarName]["error"],每個參數設定的錯誤訊息
517
#必填寫的參數:
518
#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
519
$conf["varInput"]=&$checkVar;
520
#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
521
$conf["mustBeFilledVariableName"]=array("place","account");
522
#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列 例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double"); 
523
$conf["mustBeFilledVariableType"]=array("array","array");
524
#可以省略的參數:
525
#$conf["canBeEmptyString"],必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"false"。
526
#$conf["canBeEmptyString"]="false";
527
#$conf["skipableVariableName"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
528
$conf["skipableVariableName"]=array("linkColumnName","operationShowed","var1","var2");
529
#$conf["skipableVariableType"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double"); 
530
$conf["skipableVariableType"]=array("array","array","array","array");
531
#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,"null"代表不指定,若預設值是必填參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
532
$conf["skipableVarDefaultValue"]=array(array("id"),null,$checkVar["operationShowed"],"\$checkVar[\"linkColumnName\"]");
533
#Bug:
534
#每遇到用一個可省略變數的預設直產生,就要立即套用到目標變數陣列裡面,不能等到所有可省略變數的指定預設值都指指定完後,再套用預設值。
535
$checkResult=variableCheck::checkArguments($conf);
536
unset($conf);
537
 
538
#檢查結果
539
#var_dump($checkResult);
540
 
541
#檢查可省略的參數有無出現
542
var_dump($checkVar);
543
 
544
*/
545
 
546
/*
547
 
548
#提示正在測試的方法
549
echo"<hr>variableCheck::checkArguments - testCase 4<p>";
550
 
551
$varInput["A"]=array(1,2,3);
552
$varInput["B"]=array(4,5,6);
553
$varInput["a"]="aa";
554
$varInput["b"]="bb";
555
#$varInput["C"]="cc";
556
$varInput["D"]=array(7,8,9);
557
$varInput["E"]=array(0,-1,-2,"-3");
558
#$varInput["F"]="ff";
559
 
560
#函式說明:
561
#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
562
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
563
#$reuslt["error"],執行不正常結束的錯訊息陣列.
564
#$result["function"],當前執行的函式名稱.
565
#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
566
#$result[$shouldBtCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
567
#$result[$shouldBtCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
568
#$result[$shouldBtCheckedVarName]["error"],每個參數設定的錯誤訊息
569
#必填寫的參數:
570
#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
571
$conf["varInput"]=&$varInput;
572
#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
573
$conf["mustBeFilledVariableName"]=array("A","B","a","b");
574
#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列 例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double"); 
575
$conf["mustBeFilledVariableType"]=array("array","array","string","string");
576
#可以省略的參數:
577
#$conf["canBeEmptyString"],必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"false"。
578
$conf["canBeEmptyString"]="false";
579
#$conf["skipableVariableName"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
580
$conf["skipableVariableName"]=array("C","D","E","F");
581
#$conf["skipableVariableType"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double"); 
582
$conf["skipableVariableType"]=array("string","array","array","string");
583
#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,"null"代表不指定,若預設值是必填參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
584
#$conf["skipableVarDefaultValue"]=array("");
585
#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
586
$conf["arrayCountEqualCheck"][]=array("A","D");
587
$conf["arrayCountEqualCheck"][]=array("B","E");
588
var_dump(variableCheck::checkArguments($conf));
589
unset($conf);
590
 
591
*/
592
 
593
/*
594
 
595
#提示正在測試的方法
596
echo"<hr>variableCheck::checkArguments - testCase 5<p>";
597
 
598
$varInput["A"]=array(1,2,3);
599
$varInput["B"]=array(4,5,6);
600
$varInput["a"]="aa";
601
$varInput["b"]="bb";
602
#$varInput["C"]="cc";
603
$varInput["D"]=array(7,8,9);
604
$varInput["E"]=array(0,-1,-2,"-3");
605
#$varInput["F"]="ff";
606
 
607
#函式說明:
608
#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
609
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
610
#$reuslt["error"],執行不正常結束的錯訊息陣列.
611
#$result["function"],當前執行的函式名稱.
612
#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
613
#$result[$shouldBtCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
614
#$result[$shouldBtCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
615
#$result[$shouldBtCheckedVarName]["error"],每個參數設定的錯誤訊息
616
#必填寫的參數:
617
#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
618
$conf["varInput"]=&$varInput;
619
#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
620
$conf["mustBeFilledVariableName"]=array("A","B","a","b");
621
#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列 例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double"); 
622
$conf["mustBeFilledVariableType"]=array("array","array","string","string");
623
#可以省略的參數:
624
#$conf["canBeEmptyString"],必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"false"。
625
$conf["canBeEmptyString"]="false";
626
#$conf["skipableVariableName"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
627
$conf["skipableVariableName"]=array("C","D","E","F");
628
#$conf["skipableVariableType"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double"); 
629
$conf["skipableVariableType"]=array("string","array","array","string");
630
#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,"null"代表不指定,若預設值是必填參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
631
$conf["skipableVarDefaultValue"]=array("skipC","skipD","skipE","skipF");
632
#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
633
#$conf["arrayCountEqualCheck"][]=array("A","D");
634
#$conf["arrayCountEqualCheck"][]=array("B","E");
635
var_dump(variableCheck::checkArguments($conf));
636
unset($conf);
637
 
638
var_dump($varInput);
639
 
640
*/
641
 
642
/*
643
 
644
#提示正在測試的方法
645
echo"<hr>variableCheck::checkArguments - testCase 6<p>";
646
 
647
$varInput["A"]=array(1,2,3);
648
$varInput["B"]=array(4,5,6);
649
$varInput["a"]="aa";
650
$varInput["b"]="bb";
651
#$varInput["C"]="cc";
652
$varInput["D"]=array(7,8,9);
653
$varInput["E"]=array(0,-1,-2,"-3");
654
#$varInput["F"]="ff";
655
$varInput["G"]="我是多餘的參數G";
656
$varInput["H"]="我是多餘的參數H";
657
 
658
#函式說明:
659
#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
660
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
661
#$reuslt["error"],執行不正常結束的錯訊息陣列.
662
#$result["function"],當前執行的函式名稱.
663
#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
664
#$result[$shouldBtCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
665
#$result[$shouldBtCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
666
#$result[$shouldBtCheckedVarName]["error"],每個參數設定的錯誤訊息
667
#$result["notNeedVar"],字串陣列,多餘的參數名稱.
668
#必填寫的參數:
669
#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
670
$conf["varInput"]=&$varInput;
671
#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
672
$conf["mustBeFilledVariableName"]=array("A","B","a","b");
673
#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列 例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double"); 
674
$conf["mustBeFilledVariableType"]=array("array","array","string","string");
675
#可以省略的參數:
676
#$conf["canBeEmptyString"],必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"false"。
677
$conf["canBeEmptyString"]="false";
678
#$conf["skipableVariableName"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
679
$conf["skipableVariableName"]=array("C","D","E","F");
680
#$conf["skipableVariableType"],爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double"); 
681
$conf["skipableVariableType"]=array("string","array","array","string");
682
#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,"null"代表不指定,若預設值是必填參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
683
$conf["skipableVarDefaultValue"]=array("skipC","skipD","skipE","skipF");
684
#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
685
#$conf["arrayCountEqualCheck"][]=array("A","D");
686
#$conf["arrayCountEqualCheck"][]=array("B","E");
687
var_dump(variableCheck::checkArguments($conf));
688
unset($conf);
689
 
690
*/ 
691
 
692
/*
693
 
694
#提示正在測試的方法
695
echo"<hr>variableCheck::checkArguments - testCase 7<p>";
696
 
697
$varInput=array();
698
$varInput["m1"]="m1";
699
$varInput["s1"]="s1";
700
$varInput["s2"]="s2";
701
$varInput["s3"]="s3";
702
 
703
#函式說明:
704
#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
705
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
706
#$reuslt["error"],執行不正常結束的錯訊息陣列.
707
#$result["function"],當前執行的函式名稱.
708
#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
709
#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
710
#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
711
#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
712
#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
713
#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
714
#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
715
#$result["notNeedVar"],字串陣列,多餘的參數名稱.
716
#必填寫的參數:
717
#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
718
$conf["varInput"]=&$varInput;
719
#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
720
$conf["mustBeFilledVariableName"]=array("m1");
721
#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
722
$conf["mustBeFilledVariableType"]=array("string");
723
#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
724
$conf["referenceVarKey"]="variableCheck::checkArguments";
725
#可以省略的參數:
726
#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
727
#$conf["canBeEmptyString"]="false";
728
#$conf["canNotBeEmpty"],字串陣列,哪些必填參數的內容不得為空字串或空陣列,僅當$conf["canBeEmptyString"]為"true"時會生效.
729
#$conf["canNotBeEmpty"]=array();
730
#$conf["canBeEmpty"],字串陣列,哪些必填參數的內容可為空字串或空陣列,僅當$conf["canBeEmptyString"]為"false"時會生效.
731
#$conf["canBeEmpty"]=array();
732
#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或空陣列.
733
#$conf["skipableVariableCanNotBeEmpty"]=array();
734
#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
735
$conf["skipableVariableName"]=array("s1","s2","s3");
736
#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double"); 
737
$conf["skipableVariableType"]=array("string","string","string");
738
#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
739
#$conf["skipableVarDefaultValue"]=array("");
740
#$conf["disallowAllSkipableVarIsEmpty"],字串,是否允許每個可省略參數都為空字串,預設為"true"允許,反之為"false".
741
$conf["disallowAllSkipableVarIsEmpty"]="true";
742
#$conf["disallowAllSkipableVarIsEmptyArray"],字串,是否允許每個可省略參數都為空陣列,預設為"true"允許,反之為"false".
743
#$conf["disallowAllSkipableVarIsEmptyArray"]="";
744
#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
745
#$conf["arrayCountEqualCheck"][]=array();
746
#參考資料來源:
747
#array_keys=>http://php.net/manual/en/function.array-keys.php
748
#建議:
749
#增加可省略參數全部不能為空字串或空陣列的參數功能.
750
$checkArguments=variableCheck::checkArguments($conf);
751
unset($conf);
752
 
753
#如果檢查參數失敗
754
if($checkArguments["status"]==="false"){
755
 
756
	#印出結果
757
	var_dump($checkArguments);
758
 
759
	#結束程式
760
	exit;
761
 
762
	}#if end
763
 
764
#印出結果
765
var_dump($checkArguments);
766
 
767
*/
768
 
769
/*
770
 
771
#提示正在測試的方法
772
echo"<hr>variableCheck::__call - testCase 1<p>";
773
 
774
#測試 __call 的結果	
775
var_dump(variableCheck::notExistMethod($conf=array('A'=>'a','B'=>'b')));
776
 
777
*/
778
 
779
/*
780
 
781
#提示正在測試的方法
782
echo"<hr>variableCheck::checkArguments - testCase 8<p>";
783
 
784
$varInput=array();
785
$varInput["m1"]="m1";
786
$varInput["s1"]="";
787
$varInput["s2"]="";
788
$varInput["s3"]="";
789
 
790
#函式說明:
791
#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
792
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
793
#$reuslt["error"],執行不正常結束的錯訊息陣列.
794
#$result["function"],當前執行的函式名稱.
795
#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
796
#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
797
#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
798
#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
799
#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
800
#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
801
#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
802
#$result["notNeedVar"],字串陣列,多餘的參數名稱.
803
#必填寫的參數:
804
#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
805
$conf["varInput"]=&$varInput;
806
#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
807
$conf["mustBeFilledVariableName"]=array("m1");
808
#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
809
$conf["mustBeFilledVariableType"]=array("string");
810
#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
811
$conf["referenceVarKey"]="variableCheck::checkArguments";
812
#可以省略的參數:
813
#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
814
#$conf["canBeEmptyString"]="false";
815
#$conf["canNotBeEmpty"],字串陣列,哪些必填參數的內容不得為空字串或空陣列,僅當$conf["canBeEmptyString"]為"true"時會生效.
816
#$conf["canNotBeEmpty"]=array();
817
#$conf["canBeEmpty"],字串陣列,哪些必填參數的內容可為空字串或空陣列,僅當$conf["canBeEmptyString"]為"false"時會生效.
818
#$conf["canBeEmpty"]=array();
819
#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或空陣列.
820
#$conf["skipableVariableCanNotBeEmpty"]=array();
821
#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
822
$conf["skipableVariableName"]=array("s1","s2","s3");
823
#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double"); 
824
$conf["skipableVariableType"]=array("string","string","string");
825
#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
826
#$conf["skipableVarDefaultValue"]=array("");
827
#$conf["disallowAllSkipableVarIsEmpty"],字串,是否允許每個可省略參數都為空字串,預設為"true"允許,反之為"false".
828
$conf["disallowAllSkipableVarIsEmpty"]="true";
829
#$conf["disallowAllSkipableVarIsEmptyArray"],字串,是否允許每個可省略參數都為空陣列,預設為"true"允許,反之為"false".
830
#$conf["disallowAllSkipableVarIsEmptyArray"]="";
831
#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
832
#$conf["arrayCountEqualCheck"][]=array();
833
#參考資料來源:
834
#array_keys=>http://php.net/manual/en/function.array-keys.php
835
#建議:
836
#增加可省略參數全部不能為空字串或空陣列的參數功能.
837
$checkArguments=variableCheck::checkArguments($conf);
838
unset($conf);
839
 
840
#如果檢查參數失敗
841
if($checkArguments["status"]==="false"){
842
 
843
	#印出結果
844
	var_dump($checkArguments);
845
 
846
	#結束程式
847
	exit;
848
 
849
	}#if end
850
 
851
#印出結果
852
var_dump($checkArguments);
853
 
854
*/
855
 
856
/*
857
 
858
#提示正在測試的方法
859
echo"<hr>variableCheck::checkArguments - testCase 9<p>";
860
 
861
$varInput=array();
862
$varInput["m1"]="m1";
863
$varInput["s1"]=array(array(),array());
864
$varInput["s2"]=array(array(),array());
865
$varInput["s3"]=array(array(),array(),array(array("1")));
866
 
867
#函式說明:
868
#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
869
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
870
#$reuslt["error"],執行不正常結束的錯訊息陣列.
871
#$result["function"],當前執行的函式名稱.
872
#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
873
#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
874
#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
875
#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
876
#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
877
#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
878
#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
879
#$result["notNeedVar"],字串陣列,多餘的參數名稱.
880
#必填寫的參數:
881
#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
882
$conf["varInput"]=&$varInput;
883
#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
884
$conf["mustBeFilledVariableName"]=array("m1");
885
#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
886
$conf["mustBeFilledVariableType"]=array("string");
887
#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
888
$conf["referenceVarKey"]="variableCheck::checkArguments";
889
#可以省略的參數:
890
#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
891
#$conf["canBeEmptyString"]="false";
892
#$conf["canNotBeEmpty"],字串陣列,哪些必填參數的內容不得為空字串或空陣列,僅當$conf["canBeEmptyString"]為"true"時會生效.
893
#$conf["canNotBeEmpty"]=array();
894
#$conf["canBeEmpty"],字串陣列,哪些必填參數的內容可為空字串或空陣列,僅當$conf["canBeEmptyString"]為"false"時會生效.
895
#$conf["canBeEmpty"]=array();
896
#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或空陣列.
897
#$conf["skipableVariableCanNotBeEmpty"]=array();
898
#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
899
$conf["skipableVariableName"]=array("s1","s2","s3");
900
#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double"); 
901
$conf["skipableVariableType"]=array("array","array","array");
902
#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
903
#$conf["skipableVarDefaultValue"]=array("");
904
#$conf["disallowAllSkipableVarIsEmpty"],字串,是否允許每個可省略參數都為空字串,預設為"true"允許,反之為"false".
905
$conf["disallowAllSkipableVarIsEmpty"]="true";
906
#$conf["disallowAllSkipableVarIsEmptyArray"],字串,是否允許每個可省略參數都為空陣列,預設為"true"允許,反之為"false".
907
$conf["disallowAllSkipableVarIsEmptyArray"]="true";
908
#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
909
#$conf["arrayCountEqualCheck"][]=array();
910
#參考資料來源:
911
#array_keys=>http://php.net/manual/en/function.array-keys.php
912
#建議:
913
#增加可省略參數全部不能為空字串或空陣列的參數功能.
914
$checkArguments=variableCheck::checkArguments($conf);
915
unset($conf);
916
 
917
#如果檢查參數失敗
918
if($checkArguments["status"]==="false"){
919
 
920
	#印出結果
921
	var_dump($checkArguments);
922
 
923
	#結束程式
924
	exit;
925
 
926
	}#if end
927
 
928
#印出結果
929
var_dump($checkArguments);
930
 
931
*/
932
 
933
/*
934
 
935
#提示正在測試的方法
936
echo"<hr>variableCheck::checkArguments - testCase 10<p>";
937
 
938
$varInput=array();
939
$varInput["m1"]="m1";
940
$varInput["s1"]=array(array(),array());
941
$varInput["s2"]=array(array(),array());
942
$varInput["s3"]=array(array(),array(),array(array()));
943
 
944
#函式說明:
945
#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
946
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
947
#$reuslt["error"],執行不正常結束的錯訊息陣列.
948
#$result["function"],當前執行的函式名稱.
949
#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
950
#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
951
#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
952
#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
953
#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
954
#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
955
#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
956
#$result["notNeedVar"],字串陣列,多餘的參數名稱.
957
#必填寫的參數:
958
#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
959
$conf["varInput"]=&$varInput;
960
#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
961
$conf["mustBeFilledVariableName"]=array("m1");
962
#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
963
$conf["mustBeFilledVariableType"]=array("string");
964
#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
965
$conf["referenceVarKey"]="variableCheck::checkArguments";
966
#可以省略的參數:
967
#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
968
#$conf["canBeEmptyString"]="false";
969
#$conf["canNotBeEmpty"],字串陣列,哪些必填參數的內容不得為空字串或空陣列,僅當$conf["canBeEmptyString"]為"true"時會生效.
970
#$conf["canNotBeEmpty"]=array();
971
#$conf["canBeEmpty"],字串陣列,哪些必填參數的內容可為空字串或空陣列,僅當$conf["canBeEmptyString"]為"false"時會生效.
972
#$conf["canBeEmpty"]=array();
973
#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或空陣列.
974
#$conf["skipableVariableCanNotBeEmpty"]=array();
975
#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
976
$conf["skipableVariableName"]=array("s1","s2","s3");
977
#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double"); 
978
$conf["skipableVariableType"]=array("array","array","array");
979
#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
980
#$conf["skipableVarDefaultValue"]=array("");
981
#$conf["disallowAllSkipableVarIsEmpty"],字串,是否允許每個可省略參數都為空字串,預設為"true"允許,反之為"false".
982
$conf["disallowAllSkipableVarIsEmpty"]="true";
983
#$conf["disallowAllSkipableVarIsEmptyArray"],字串,是否允許每個可省略參數都為空陣列,預設為"true"允許,反之為"false".
984
$conf["disallowAllSkipableVarIsEmptyArray"]="true";
985
#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
986
#$conf["arrayCountEqualCheck"][]=array();
987
#參考資料來源:
988
#array_keys=>http://php.net/manual/en/function.array-keys.php
989
#建議:
990
#增加可省略參數全部不能為空字串或空陣列的參數功能.
991
$checkArguments=variableCheck::checkArguments($conf);
992
unset($conf);
993
 
994
#如果檢查參數失敗
995
if($checkArguments["status"]==="false"){
996
 
997
	#印出結果
998
	var_dump($checkArguments);
999
 
1000
	#結束程式
1001
	exit;
1002
 
1003
	}#if end
1004
 
1005
#印出結果
1006
var_dump($checkArguments);
1007
 
1008
*/
1009
 
1010
/*
1011
 
1012
#提示正在測試的方法
1013
echo"<hr>variableCheck::checkArguments - testCase 11<p>";
1014
 
1015
$varInput=array();
1016
$varInput["m1"]="m1";
1017
$varInput["s1"]="s1";
1018
$varInput["s2"]="s2";
1019
$varInput["s3"]="s3";
1020
#$varInput["s1"]=array(array(),array());
1021
#$varInput["s2"]=array(array(),array());
1022
#$varInput["s3"]=array(array(),array(),array(array()));
1023
 
1024
#函式說明:
1025
#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
1026
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
1027
#$reuslt["error"],執行不正常結束的錯訊息陣列.
1028
#$result["function"],當前執行的函式名稱.
1029
#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
1030
#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
1031
#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
1032
#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
1033
#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
1034
#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
1035
#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
1036
#$result["notNeedVar"],字串陣列,多餘的參數名稱.
1037
#必填寫的參數:
1038
#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
1039
$conf["varInput"]=&$varInput;
1040
#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
1041
$conf["mustBeFilledVariableName"]=array("m1");
1042
#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
1043
$conf["mustBeFilledVariableType"]=array("string");
1044
#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
1045
$conf["referenceVarKey"]="variableCheck::checkArguments";
1046
#可以省略的參數:
1047
#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
1048
#$conf["canBeEmptyString"]="false";
1049
#$conf["canNotBeEmpty"],字串陣列,哪些必填參數的內容不得為空字串或空陣列,僅當$conf["canBeEmptyString"]為"true"時會生效.
1050
#$conf["canNotBeEmpty"]=array();
1051
#$conf["canBeEmpty"],字串陣列,哪些必填參數的內容可為空字串或空陣列,僅當$conf["canBeEmptyString"]為"false"時會生效.
1052
#$conf["canBeEmpty"]=array();
1053
#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或空陣列.
1054
#$conf["skipableVariableCanNotBeEmpty"]=array();
1055
#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
1056
$conf["skipableVariableName"]=array("s1","s2","s3");
1057
#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double"); 
1058
$conf["skipableVariableType"]=array("string","string","string");
1059
#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
1060
#$conf["skipableVarDefaultValue"]=array("");
1061
#$conf["disallowAllSkipableVarIsEmpty"],字串,是否允許每個可省略參數都為空字串,預設為"true"允許,反之為"false".
1062
$conf["disallowAllSkipableVarIsEmpty"]="true";
1063
#$conf["disallowAllSkipableVarIsEmptyArray"],字串,是否允許每個可省略參數都為空陣列,預設為"true"允許,反之為"false".
1064
$conf["disallowAllSkipableVarIsEmptyArray"]="true";
1065
#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
1066
#$conf["arrayCountEqualCheck"][]=array();
1067
#參考資料來源:
1068
#array_keys=>http://php.net/manual/en/function.array-keys.php
1069
#建議:
1070
#增加可省略參數全部不能為空字串或空陣列的參數功能.
1071
$checkArguments=variableCheck::checkArguments($conf);
1072
unset($conf);
1073
 
1074
#如果檢查參數失敗
1075
if($checkArguments["status"]==="false"){
1076
 
1077
	#印出結果
1078
	var_dump($checkArguments);
1079
 
1080
	#結束程式
1081
	exit;
1082
 
1083
	}#if end
1084
 
1085
#印出結果
1086
var_dump($checkArguments);
1087
 
1088
*/
1089
 
1090
/*
1091
 
1092
#提示正在測試的方法
1093
echo"<hr>variableCheck::checkArguments - testCase 12<p>";
1094
 
1095
$varInput=array();
1096
$varInput["m1"]="m1";
1097
$varInput["s1"]="s1";
1098
$varInput["s2"]=array(array(),array());
1099
$varInput["s3"]=array(array(),array(),array(array()));
1100
 
1101
#函式說明:
1102
#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
1103
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
1104
#$reuslt["error"],執行不正常結束的錯訊息陣列.
1105
#$result["function"],當前執行的函式名稱.
1106
#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
1107
#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
1108
#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
1109
#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
1110
#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
1111
#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
1112
#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
1113
#$result["notNeedVar"],字串陣列,多餘的參數名稱.
1114
#必填寫的參數:
1115
#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
1116
$conf["varInput"]=&$varInput;
1117
#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
1118
$conf["mustBeFilledVariableName"]=array("m1");
1119
#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
1120
$conf["mustBeFilledVariableType"]=array("string");
1121
#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
1122
$conf["referenceVarKey"]="variableCheck::checkArguments";
1123
#可以省略的參數:
1124
#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
1125
#$conf["canBeEmptyString"]="false";
1126
#$conf["canNotBeEmpty"],字串陣列,哪些必填參數的內容不得為空字串或空陣列,僅當$conf["canBeEmptyString"]為"true"時會生效.
1127
#$conf["canNotBeEmpty"]=array();
1128
#$conf["canBeEmpty"],字串陣列,哪些必填參數的內容可為空字串或空陣列,僅當$conf["canBeEmptyString"]為"false"時會生效.
1129
#$conf["canBeEmpty"]=array();
1130
#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或空陣列.
1131
#$conf["skipableVariableCanNotBeEmpty"]=array();
1132
#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
1133
$conf["skipableVariableName"]=array("s1","s2","s3");
1134
#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double"); 
1135
$conf["skipableVariableType"]=array("string","array","array");
1136
#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
1137
#$conf["skipableVarDefaultValue"]=array("");
1138
#$conf["disallowAllSkipableVarIsEmpty"],字串,是否允許每個可省略參數都為空字串,預設為"true"允許,反之為"false".
1139
$conf["disallowAllSkipableVarIsEmpty"]="true";
1140
#$conf["disallowAllSkipableVarIsEmptyArray"],字串,是否允許每個可省略參數都為空陣列,預設為"true"允許,反之為"false".
1141
$conf["disallowAllSkipableVarIsEmptyArray"]="true";
1142
#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
1143
#$conf["arrayCountEqualCheck"][]=array();
1144
#參考資料來源:
1145
#array_keys=>http://php.net/manual/en/function.array-keys.php
1146
#建議:
1147
#增加可省略參數全部不能為空字串或空陣列的參數功能.
1148
$checkArguments=variableCheck::checkArguments($conf);
1149
unset($conf);
1150
 
1151
#如果檢查參數失敗
1152
if($checkArguments["status"]==="false"){
1153
 
1154
	#印出結果
1155
	var_dump($checkArguments);
1156
 
1157
	#結束程式
1158
	exit;
1159
 
1160
	}#if end
1161
 
1162
#印出結果
1163
var_dump($checkArguments);
1164
 
1165
*/
1166
 
1167
/*
1168
 
1169
#提示正在測試的方法
1170
echo"<hr>variableCheck::checkArguments - testCase 13<p>";
1171
 
1172
$params=array();
1173
 
1174
#函式說明:
1175
#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
1176
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
1177
#$reuslt["error"],執行不正常結束的錯訊息陣列.
1178
#$result["function"],當前執行的函式名稱.
1179
#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
1180
#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
1181
#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
1182
#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
1183
#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
1184
#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
1185
#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
1186
#$result["notNeedVar"],字串陣列,多餘的參數名稱.
1187
#必填寫的參數:
1188
#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
1189
$conf["varInput"]=&$params;	
1190
#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
1191
$conf["referenceVarKey"]="variableCheck::checkArguments";
1192
#可以省略的參數:
1193
#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
1194
#$conf["mustBeFilledVariableName"]=array();
1195
#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
1196
#$conf["mustBeFilledVariableType"]=array();
1197
#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
1198
#$conf["canBeEmptyString"]="false";
1199
#$conf["canNotBeEmpty"],字串陣列,哪些必填參數的內容不得為空字串或空陣列,僅當$conf["canBeEmptyString"]為"true"時會生效.
1200
#$conf["canNotBeEmpty"]=array();
1201
#$conf["canBeEmpty"],字串陣列,哪些必填參數的內容可為空字串或空陣列,僅當$conf["canBeEmptyString"]為"false"時會生效.
1202
#$conf["canBeEmpty"]=array();
1203
#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或空陣列.
1204
#$conf["skipableVariableCanNotBeEmpty"]=array();
1205
#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
1206
#$conf["skipableVariableName"]=array();
1207
#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double"); 
1208
#$conf["skipableVariableType"]=array();
1209
#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
1210
#$conf["skipableVarDefaultValue"]=array("");
1211
#$conf["disallowAllSkipableVarIsEmpty"],字串,是否允許每個可省略參數都為空字串,預設為"true"允許,反之為"false".
1212
#$conf["disallowAllSkipableVarIsEmpty"]="";
1213
#$conf["disallowAllSkipableVarIsEmptyArray"],字串,是否允許每個可省略參數都為空陣列,預設為"true"允許,反之為"false".
1214
#$conf["disallowAllSkipableVarIsEmptyArray"]="";
1215
#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
1216
#$conf["arrayCountEqualCheck"][]=array();
1217
#參考資料來源:
1218
#array_keys=>http://php.net/manual/en/function.array-keys.php
1219
$checkArguments=variableCheck::checkArguments($conf);
1220
unset($conf);
1221
 
1222
#如果檢查參數失敗
1223
if($checkArguments["status"]==="false"){
1224
 
1225
	#印出內容
1226
	var_dump($checkArguments);
1227
 
1228
	#結束執行
1229
	exit;
1230
 
1231
	}#if end
1232
 
1233
#印出內容
1234
var_dump($checkArguments);
1235
 
1236
*/
1237
 
1238
/*
1239
 
1240
#提示正在測試的方法
1241
echo"<hr>variableCheck::checkArguments - testCase 14<p>";
1242
 
1243
$mainDb="test";
1244
$conf["dbInfo"][$mainDb]["dbAddr"]=$dbAddress;
1245
$conf["dbInfo"][$mainDb]["dbAcct"]=$dbAccount;
1246
$conf["dbInfo"][$mainDb]["dbPass"]=$dbPassword;
1247
$param=&$conf["dbInfo"][$mainDb];
1248
 
1249
#檢查參數
1250
#函式說明:
1251
#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容。
1252
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
1253
#$reuslt["error"],執行不正常結束的錯訊息陣列.
1254
#$result["function"],當前執行的函式名稱.
1255
#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
1256
#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
1257
#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
1258
#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
1259
#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
1260
#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
1261
#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
1262
#$result["notNeedVar"],字串陣列,多餘的參數名稱.
1263
#必填寫的參數:
1264
#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
1265
$conf["variableCheck::checkArguments"]["varInput"]=&$param;	
1266
#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
1267
$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
1268
#可以省略的參數:
1269
#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
1270
$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("dbAddr","dbAcct");
1271
#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
1272
$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("string","string");
1273
#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
1274
$conf["variableCheck::checkArguments"]["canBeEmptyString"]="false";
1275
#$conf["canNotBeEmpty"],字串陣列,哪些必填參數的內容不得為空字串或空陣列,僅當$conf["canBeEmptyString"]為"true"時會生效.
1276
#$conf["canNotBeEmpty"]=array();
1277
#$conf["canBeEmpty"],字串陣列,哪些必填參數的內容可為空字串或空陣列,僅當$conf["canBeEmptyString"]為"false"時會生效.
1278
#$conf["canBeEmpty"]=array();
1279
#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或空陣列.
1280
$conf["variableCheck::checkArguments"]["skipableVariableCanNotBeEmpty"]=array("dbPass");
1281
#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
1282
$conf["variableCheck::checkArguments"]["skipableVariableName"]=array("dbPass");
1283
#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double"); 
1284
$conf["variableCheck::checkArguments"]["skipableVariableType"]=array("string");
1285
#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
1286
$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"]=array(null);
1287
#$conf["disallowAllSkipableVarIsEmpty"],字串,是否允許每個可省略參數都為空字串,預設為"true"允許,反之為"false".
1288
#$conf["disallowAllSkipableVarIsEmpty"]="";
1289
#$conf["disallowAllSkipableVarIsEmptyArray"],字串,是否允許每個可省略參數都為空陣列,預設為"true"允許,反之為"false".
1290
#$conf["disallowAllSkipableVarIsEmptyArray"]="";
1291
#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
1292
#$conf["arrayCountEqualCheck"][]=array();
1293
#參考資料來源:
1294
#array_keys=>http://php.net/manual/en/function.array-keys.php
1295
$checkArguments=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
1296
unset($conf["variableCheck::checkArguments"]);
1297
 
1298
#如果執行失敗
1299
if($checkArguments["status"]==="false"){
1300
 
1301
	#印出結果
1302
	var_dump($checkArguments);
1303
 
1304
	#結束執行
1305
	exit;
1306
 
1307
	}#if end
1308
 
1309
#印出結果
1310
var_dump($checkArguments);
1311
 
1312
*/
1313
 
1314
/*
1315
 
1316
#提示正在測試的方法
1317
echo"<hr>variableCheck::__call - testCase 1<p>";
1318
 
1319
#測試 __call 的結果	
1320
var_dump(variableCheck::notExistMethod($conf=array('A'=>'a','B'=>'b')));
1321
 
1322
*/
1323
 
1324
/*
1325
 
1326
#提示正在測試的方法
1327
echo"<hr>variableCheck::emptyArray - testCase 1<p>";
1328
 
1329
#函式說明:
1330
#檢查一陣列變數是否為空陣列 
1331
#回傳結果:
1332
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
1333
#$result["content"],css動畫設定的語法
1334
#$result["function"],當前執行的函數
1335
#$result["error"],涵式錯誤訊息陣列
1336
#$result["empty"],"true"代表為空陣列,"false"代表不為空陣列.
1337
#必填參數:
1338
#$conf["var"],陣列變數.
1339
$conf["var"]=array(array(array(array()),array(array())),array(array(array()),array(array())),array(array(array()),array(array('not a empty array'))));
1340
#備註:
1341
#無
1342
$emptyArray=variableCheck::emptyArray($conf);
1343
unset($conf);
1344
 
1345
#如果執行失敗
1346
if($emptyArray["status"]==="false"){
1347
 
1348
	#印出內容
1349
	var_dump($emptyArray);
1350
 
1351
	#停止執行
1352
	exit;
1353
 
1354
	}#if end	
1355
 
1356
#印出內容
1357
var_dump($emptyArray);
1358
 
1359
*/
1360
 
1361
/*
1362
 
1363
#提示正在測試的方法
1364
echo"<hr>variableCheck::emptyArray - testCase 2<p>";
1365
 
1366
#函式說明:
1367
#檢查一陣列變數是否為空陣列 
1368
#回傳結果:
1369
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
1370
#$result["content"],css動畫設定的語法
1371
#$result["function"],當前執行的函數
1372
#$result["error"],涵式錯誤訊息陣列
1373
#$result["empty"],"true"代表為空陣列,"false"代表不為空陣列.
1374
#必填參數:
1375
#$conf["var"],陣列變數.
1376
$conf["var"]=array(array(array(array()),array(array())),array(array(array()),array(array())),array(array(array()),array(array())));
1377
#備註:
1378
#無
1379
$emptyArray=variableCheck::emptyArray($conf);
1380
unset($conf);
1381
 
1382
#如果執行失敗
1383
if($emptyArray["status"]==="false"){
1384
 
1385
	#印出內容
1386
	var_dump($emptyArray);
1387
 
1388
	#停止執行
1389
	exit;
1390
 
1391
	}#if end	
1392
 
1393
#印出內容
1394
var_dump($emptyArray);
1395
 
1396
*/
1397
 
1398
?>