Subversion Repositories php-qbpwcf

Rev

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

Rev 3 Rev 171
Line 274... Line 274...
274
	
274
	
275
		#設置有找到session變數
275
		#設置有找到session變數
276
		$result["founded"]="true";
276
		$result["founded"]="true";
277
 
277
 
278
		#如果 $conf["unsetSessionVar"] 為 "true"
278
		#如果 $conf["unsetSessionVar"] 為 "true"
279
		if($conf["unsetSessionVar"]=="true"){
279
		if($conf["unsetSessionVar"]==="true"){
280
				
280
				
281
			#移除session變數的內容
281
			#移除session變數的內容
282
			unset($_SESSION[$conf["sessionVarName"]]);
282
			unset($_SESSION[$conf["sessionVarName"]]);
283
								
283
			
284
			}#if end
284
			}#if end
285
						
285
		
286
		#設置執行正常
286
		#設置執行正常
287
		$result["status"]="true";
287
		$result["status"]="true";
288
 
288
 
289
		#回傳結果
289
		#回傳結果
290
		return $result;	
290
		return $result;	
Line 495... Line 495...
495
					
495
					
496
						}#if end
496
						}#if end
497
					
497
					
498
					#移除舊key的變數
498
					#移除舊key的變數
499
					unset($result["founded"][$i]);
499
					unset($result["founded"][$i]);
500
											
500
					
501
					}#for end 
501
					}#for end 
502
									
502
					
503
				}#if end
503
				}#if end
504
				
504
				
505
			#反之 $conf["keyArrayOfGotSessionValue"] 與 $conf["sessionVarNameArray"] 的元素數量不相等
505
			#反之 $conf["keyArrayOfGotSessionValue"] 與 $conf["sessionVarNameArray"] 的元素數量不相等
506
			else{
506
			else{
507
				
507
				
Line 660... Line 660...
660
			
660
			
661
			#回傳結果
661
			#回傳結果
662
			return $result;
662
			return $result;
663
			
663
			
664
			}#if end
664
			}#if end
665
			
665
		
666
		#建立session變數,並指派其直
666
		#建立session變數,並指派其直
667
		$_SESSION[$conf["sessionName"]]=$conf["sessionValue"];
667
		$_SESSION[$conf["sessionName"]]=$conf["sessionValue"];
668
					
668
		
669
		#設置執行成功的辨識訊息
669
		#設置執行成功的辨識訊息
670
		$result["status"]="true";
670
		$result["status"]="true";
671
		
671
		
672
		#回傳結果
672
		#回傳結果
673
		return $result;
673
		return $result;
Line 875... Line 875...
875
		
875
		
876
		#設置當前執行的函式
876
		#設置當前執行的函式
877
		$result["function"]=__FUNCTION__;
877
		$result["function"]=__FUNCTION__;
878
		
878
		
879
		#如果 $conf 不為陣列
879
		#如果 $conf 不為陣列
880
		if(gettype($conf)!="array"){
880
		if(gettype($conf)!=="array"){
881
			
881
			
882
			#設置執行失敗
882
			#設置執行失敗
883
			$result["status"]="false";
883
			$result["status"]="false";
884
			
884
			
885
			#設置執行錯誤訊息
885
			#設置執行錯誤訊息
886
			$result["error"][]="\$conf變數須為陣列形態";
886
			$result["error"][]="\$conf變數須為陣列形態";
887
 
887
 
888
			#如果傳入的參數為 null
888
			#如果傳入的參數為 null
889
			if($conf==null){
889
			if($conf===null){
890
				
890
				
891
				#設置執行錯誤訊息
891
				#設置執行錯誤訊息
892
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
892
				$result["error"][]="\$conf變數不得為null,請檢查函數「".$result["function"]."」的參數設置有無正確!";
893
				
893
				
894
				}#if end
894
				}#if end
Line 1168... Line 1168...
1168
			
1168
			
1169
			#回傳結果
1169
			#回傳結果
1170
			return $result;
1170
			return $result;
1171
			
1171
			
1172
			}#if end
1172
			}#if end
1173
						
1173
		
1174
		#初始化轉好的session變數數值陣列
1174
		#初始化轉好的session變數數值陣列
1175
		$sessionValueArray=array();	
1175
		$sessionValueArray=array();
1176
			
1176
		
1177
		#建立要轉換成session變數的form變數數值陣列
1177
		#建立要轉換成session變數的form變數數值陣列
1178
		foreach($conf["checkedVarName"] as $value){
1178
		foreach($conf["checkedVarName"] as $value){
1179
			
1179
			
1180
			#取得要轉換成session變數的form變數數值內容
1180
			#取得要轉換成session變數的form變數數值內容
1181
			$sessionValueArray[]=$receivedVar["inputDataContent"][$value];
1181
			$sessionValueArray[]=$receivedVar["inputDataContent"][$value];
1182
			
1182
			
1183
			}#foreach end	
1183
			}#foreach end
1184
			
1184
			
1185
		#函式說明:
1185
		#函式說明:
1186
		#建立多個session變數
1186
		#建立多個session變數
1187
		#回傳結果:
1187
		#回傳結果:
1188
		#$result["status"],執行狀態,"true"代表執行成功;"false"代表執行失敗.
1188
		#$result["status"],執行狀態,"true"代表執行成功;"false"代表執行失敗.
Line 1194... Line 1194...
1194
		#$conf["session.createMulti"]["sessionArrayValue"],字串陣列,session變數的內容要存放什麼呢?
1194
		#$conf["session.createMulti"]["sessionArrayValue"],字串陣列,session變數的內容要存放什麼呢?
1195
		$conf["session.createMulti"]["sessionArrayValue"]=$sessionValueArray;
1195
		$conf["session.createMulti"]["sessionArrayValue"]=$sessionValueArray;
1196
		#可省略參數:
1196
		#可省略參數:
1197
		#無
1197
		#無
1198
		$createSessionVarStatus=session::createMulti($conf["session.createMulti"]);
1198
		$createSessionVarStatus=session::createMulti($conf["session.createMulti"]);
1199
		unset($conf["session.createMulti"]);			
1199
		unset($conf["session.createMulti"]);
1200
		
1200
		
1201
		#如果建立session變數失敗
1201
		#如果建立session變數失敗
1202
		if($createSessionVarStatus["status"]=="false"){
1202
		if($createSessionVarStatus["status"]=="false"){
1203
			
1203
			
1204
			#設置執行不正常
1204
			#設置執行不正常
Line 1233... Line 1233...
1233
	#$result["argu"],使用的參數.
1233
	#$result["argu"],使用的參數.
1234
	#必填參數:
1234
	#必填參數:
1235
	#$conf["key"],字串陣列,session的key名稱與層級.
1235
	#$conf["key"],字串陣列,session的key名稱與層級.
1236
	$conf["key"]=array();
1236
	$conf["key"]=array();
1237
	#可省略參數:
1237
	#可省略參數:
-
 
1238
	#$conf["unsetSess"],字串,是否要於成功取得session變數後,將之移除,預設為"false"代表不移除;反之為"true".
1238
	#無.
1239
	#$conf["unsetSess"]="false";
1239
	#參考資料:
1240
	#參考資料:
1240
	#無.
1241
	#無.
1241
	#備註:
1242
	#備註:
1242
	#無.
1243
	#無.
1243
	*/
1244
	*/
Line 1319... Line 1320...
1319
		#$conf["canBeEmpty"],字串陣列,哪些必填參數的內容可為空字串或空陣列,僅當$conf["canBeEmptyString"]為"false"時會生效.
1320
		#$conf["canBeEmpty"],字串陣列,哪些必填參數的內容可為空字串或空陣列,僅當$conf["canBeEmptyString"]為"false"時會生效.
1320
		#$conf["canBeEmpty"]=array();
1321
		#$conf["canBeEmpty"]=array();
1321
		#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或空陣列.
1322
		#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或空陣列.
1322
		#$conf["skipableVariableCanNotBeEmpty"]=array();
1323
		#$conf["skipableVariableCanNotBeEmpty"]=array();
1323
		#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
1324
		#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
1324
		#$conf["skipableVariableName"]=array();
1325
		$conf["variableCheck::checkArguments"]["skipableVariableName"]=array("unsetSess");
1325
		#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double"); 
1326
		#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double"); 
1326
		#$conf["skipableVariableType"]=array();
1327
		$conf["variableCheck::checkArguments"]["skipableVariableType"]=array("string");
1327
		#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
1328
		#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$conf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
1328
		#$conf["skipableVarDefaultValue"]=array("");
1329
		$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"]=array("false");
1329
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
1330
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
1330
		#$conf["arrayCountEqualCheck"][]=array();
1331
		#$conf["arrayCountEqualCheck"][]=array();
1331
		#參考資料來源:
1332
		#參考資料來源:
1332
		#array_keys=>http://php.net/manual/en/function.array-keys.php
1333
		#array_keys=>http://php.net/manual/en/function.array-keys.php
1333
		#建議:
1334
		#建議:
Line 1392... Line 1393...
1392
			#反之
1393
			#反之
1393
			else{
1394
			else{
1394
				
1395
				
1395
				#取得 session 該層的內容
1396
				#取得 session 該層的內容
1396
				$session=$session[$keyVal];
1397
				$session=$session[$keyVal];
1397
								
1398
				
1398
				#取得 session 的位址
1399
				#取得 session 的位址
1399
				$sessionAddress=&$sessionAddress[$keyVal];
1400
				$sessionAddress=&$sessionAddress[$keyVal];
1400
				
1401
				
-
 
1402
				#如果要卸除 session 變數
-
 
1403
				if($conf["unsetSess"]==="true"){
-
 
1404
				
-
 
1405
					#卸除 session 變數
-
 
1406
					unset($sessionAddress);
-
 
1407
				
-
 
1408
					}#if end
-
 
1409
				
1401
				}#else end
1410
				}#else end
1402
			
1411
			
1403
			}#foreach end
1412
			}#foreach end
1404
			
1413
			
1405
		#設置執行正常
1414
		#設置執行正常