Subversion Repositories qbpwcf-lib(archive)

Rev

Rev 402 | Rev 409 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 402 Rev 405
Line 48... Line 48...
48
	echo "--dbAddr MariaDb service address, default is \"localhost\"".PHP_EOL;
48
	echo "--dbAddr MariaDb service address, default is \"localhost\"".PHP_EOL;
49
	echo "--dbAcct MariaDb service account, default is \"root\"".PHP_EOL;
49
	echo "--dbAcct MariaDb service account, default is \"root\"".PHP_EOL;
50
	echo "--dbPass MariaDb service password, default is output of uuid command".PHP_EOL;
50
	echo "--dbPass MariaDb service password, default is output of uuid command".PHP_EOL;
51
	echo "--dbName MariaDb service database name, default is test".PHP_EOL;
51
	echo "--dbName MariaDb service database name, default is test".PHP_EOL;
52
	echo "--dbPort MariaDb service port, default is 3306".PHP_EOL;
52
	echo "--dbPort MariaDb service port, default is 3306".PHP_EOL;
-
 
53
	echo "--headless true/false, default is false. If true, it means link allInOneForCI.php to allInOne.php".PHP_EOL;
53
	exit;
54
	exit;
54
 
55
 
55
	}#function help end
56
	}#function help end
56
 
57
 
57
#函式說明:
58
#函式說明:
Line 195... Line 196...
195
$dbAddr="localhost";
196
$dbAddr="localhost";
196
 
197
 
197
#預設的資料庫port
198
#預設的資料庫port
198
$dbPort="3306";
199
$dbPort="3306";
199
 
200
 
-
 
201
#預設要有自動輸出的內容
-
 
202
$headless="false";
-
 
203
 
200
#檢查參數
204
#檢查參數
201
#函式說明:
205
#函式說明:
202
#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容.
206
#檢查必填與可省略的參數,可省略參數可指定預設要給與什麼數值內容.
203
#回傳結果:
207
#回傳結果:
204
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
208
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
Line 228... Line 232...
228
#$conf["canNotBeEmpty"],字串陣列,哪些必填參數的內容不得為空字串或空陣列,僅當$conf["canBeEmptyString"]為"true"時會生效.
232
#$conf["canNotBeEmpty"],字串陣列,哪些必填參數的內容不得為空字串或空陣列,僅當$conf["canBeEmptyString"]為"true"時會生效.
229
#$conf["canNotBeEmpty"]=array();
233
#$conf["canNotBeEmpty"]=array();
230
#$conf["canBeEmpty"],字串陣列,哪些必填參數的內容可為空字串或空陣列,僅當$conf["canBeEmptyString"]為"false"時會生效.
234
#$conf["canBeEmpty"],字串陣列,哪些必填參數的內容可為空字串或空陣列,僅當$conf["canBeEmptyString"]為"false"時會生效.
231
#$conf["canBeEmpty"]=array();
235
#$conf["canBeEmpty"]=array();
232
#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或空陣列.
236
#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或空陣列.
233
$conf["skipableVariableCanNotBeEmpty"]=array("rootPath","name","mode","ip","dbAcct","dbPass","dbName","dbAddr","dbPort");
237
$conf["skipableVariableCanNotBeEmpty"]=array("rootPath","name","mode","ip","dbAcct","dbPass","dbName","dbAddr","dbPort","headless");
234
#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
238
#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
235
$conf["skipableVariableName"]=array("rootPath","name","mode","ip","dbAcct","dbPass","dbName","dbAddr","dbPort");
239
$conf["skipableVariableName"]=array("rootPath","name","mode","ip","dbAcct","dbPass","dbName","dbAddr","dbPort","headless");
236
#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
240
#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
237
$conf["skipableVariableType"]=array("array","array","array","array","array","array","array","array","array");
241
$conf["skipableVariableType"]=array("array","array","array","array","array","array","array","array","array","array");
238
#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
242
#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
239
$conf["skipableVarDefaultValue"]=array(null,null,null,null);
243
$conf["skipableVarDefaultValue"]=array(null,null,null,null);
240
#$conf["disallowAllSkipableVarIsEmpty"],字串,是否允許每個可省略參數都為空字串,預設為"true"允許,反之為"false".
244
#$conf["disallowAllSkipableVarIsEmpty"],字串,是否允許每個可省略參數都為空字串,預設為"true"允許,反之為"false".
241
#$conf["disallowAllSkipableVarIsEmpty"]="";
245
#$conf["disallowAllSkipableVarIsEmpty"]="";
242
#$conf["disallowAllSkipableVarIsEmptyArray"],字串,是否允許每個可省略參數都為空陣列,預設為"true"允許,反之為"false".
246
#$conf["disallowAllSkipableVarIsEmptyArray"],字串,是否允許每個可省略參數都為空陣列,預設為"true"允許,反之為"false".
243
#$conf["disallowAllSkipableVarIsEmptyArray"]="";
247
#$conf["disallowAllSkipableVarIsEmptyArray"]="";
244
#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
248
#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
245
$conf["arrayCountEqualCheck"][]=array("rootPath","name","mode","ip","dbAcct","dbPass","dbName","dbAddr","dbPort");
249
$conf["arrayCountEqualCheck"][]=array("rootPath","name","mode","ip","dbAcct","dbPass","dbName","dbAddr","dbPort","headless");
246
#參考資料:
250
#參考資料:
247
#array_keys=>http://php.net/manual/en/function.array-keys.php
251
#array_keys=>http://php.net/manual/en/function.array-keys.php
248
#備註:
252
#備註:
249
#無.
253
#無.
250
$checkArguments=variableCheck::checkArguments($conf);
254
$checkArguments=variableCheck::checkArguments($conf);
Line 367... Line 371...
367
			$dbPort=$parseArgu["content"]["dbPort"][0];
371
			$dbPort=$parseArgu["content"]["dbPort"][0];
368
		
372
		
369
			}#if end
373
			}#if end
370
	
374
	
371
		}#if end
375
		}#if end
-
 
376
		
-
 
377
	#如果有 headless 參數
-
 
378
	if(isset($parseArgu["content"]["headless"])){
-
 
379
	
-
 
380
		#如果有 headless 參數存在
-
 
381
		if(isset($parseArgu["content"]["headless"][0])){
-
 
382
		
-
 
383
			#更新 headless
-
 
384
			$headless=$parseArgu["content"]["headless"][0];
-
 
385
		
-
 
386
			}#if end
-
 
387
	
-
 
388
		}#if end
-
 
389
 
-
 
390
	}#if end
-
 
391
 
-
 
392
#如果要使用不自動輸出內容的 allInOneForCI.php 檔案
-
 
393
if($headless==="true"){
-
 
394
 
-
 
395
	#函式說明:
-
 
396
	#建立軟連結.
-
 
397
	#回傳結果:
-
 
398
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
-
 
399
	#$result["error"],錯誤訊息.
-
 
400
	#$result["function"],當前執行的函數名稱.
-
 
401
	#$result["content"],軟連結的資訊.
-
 
402
	#必填參數:
-
 
403
	#$conf["fileArgu"],字串,變數__FILE__的內容.
-
 
404
	$conf["fileArgu"]=__FILE__;
-
 
405
	#$conf["linkTo"],字串,軟連結要指向哪邊.
-
 
406
	$conf["linkTo"]="qbpwcf/allInOneForCI.php";
-
 
407
	#可省略參數:
-
 
408
	#$conf["path"],字串,軟連結要放在哪邊,預設為當前位置.
-
 
409
	$conf["path"]="qbpwcf";
-
 
410
	#$conf["name"],字串,軟連結的名稱,預設為 "linkTo" 參數的檔案或目錄名稱.
-
 
411
	$conf["name"]="allInOne.php";
-
 
412
	#參考資料:
-
 
413
	#無.
-
 
414
	#備註:
-
 
415
	#無.
-
 
416
	$createLink=fileAccess::createLink($conf);
-
 
417
	unset($conf);
-
 
418
 
-
 
419
	#如果執行失敗
-
 
420
	if($createLink["status"]==="false"){
-
 
421
 
-
 
422
		#函式說明:
-
 
423
		#撰寫log
-
 
424
		#回傳結果:
-
 
425
		#$result["status"],狀態,"true"或"false".
-
 
426
		#$result["error"],錯誤訊息陣列.
-
 
427
		#$result["function"],當前函式的名稱.
-
 
428
		#$result["argu"],使用的參數.
-
 
429
		#必填參數:
-
 
430
		#$conf["path"],字串,log檔案的路徑與名稱.
-
 
431
		$conf["path"]=$logFile;
-
 
432
		#$conf["content"],any,要寫的內容,若內容不為字串則會用var_dump的格式寫入.
-
 
433
		$conf["content"]=$createLink;
-
 
434
		#$conf["fileArgu"],字串,php變數__FILE__的內容,亦即該檔案在檔案系統的絕對路徑
-
 
435
		$conf["fileArgu"]=__FILE__;
-
 
436
		#可省略參數:
-
 
437
		#$conf["rewrite"],預設為"false",接續寫入;反之"true"代表重新寫入.
-
 
438
		#$conf["rewrite"]="false";
-
 
439
		#參考資料:
-
 
440
		#無.
-
 
441
		#備註:
-
 
442
		#無.
-
 
443
		$record=logs::record($conf);
-
 
444
		
-
 
445
		#如果執行失敗
-
 
446
		if($record["status"]==="false"){
-
 
447
		
-
 
448
			#印出結果
-
 
449
			var_dump($record);
-
 
450
			
-
 
451
			#異常結束執行
-
 
452
			exit(1);
-
 
453
		
-
 
454
			}#if end
-
 
455
 
-
 
456
		}#if end
372
 
457
 
373
	}#if end
458
	}#if end
374
 
459
 
375
#讓 "qbpwcf/usr/bin" 底下的所有檔案為可執行. 
460
#讓 "qbpwcf/usr/bin" 底下的所有檔案為可執行. 
376
#函式說明:
461
#函式說明: