Blame | Last modification | View Log | RSS feed
<?php#namespace qbpwcfnamespace qbpwcf;#匯入外部套件include("../allInOne.php");#提示目前測試的項目echo "<hr>session::getSessionValue - testCase 1<p>";/*$_SESSION["testCase"]["sessionT"]["testSessionVar"]="test!";#函式說明:#取得session變數裡面的數值,然後卸除該session變數#回傳的結果:#$result,取得的變數內容#必填的參數:$conf["sessionVarName"]=&$_SESSION["testCase"]["sessionT"]["testSessionVar"];#session變數的名稱,請保留前面的&#可省略的參數:$conf["unsetSessionVar"]="true";#"true"代表要卸除session變數#var_dump(session::getSessionValue($conf));unset($conf);*/#提示目前測試的項目echo "<hr>session::create - testCase 1<p>";/*#涵式說明:#建立session變數,並指派其內容#回傳的結果:#$result["status"],執行狀態,"true"代表執行成功;"false"代表執行失敗。#$result["error"],錯誤訊息陣列#必填的參數:$conf["sessionName"]="layer1.layer2.layer3.layer4.layer5";#要建立的session變數key,第1個元素代表第1個key,其餘以此類推。#可省略的參數:$conf["sessionValue"]="test!";#session變數的內容要存放什麼呢?var_dump(session::create($conf));unset($conf);var_dump($_SESSION["layer1.layer2.layer3.layer4.layer5"]);*/#提示目前測試的項目echo "<hr>session::createMulti - testCase 1<p>";/*#函數說明:#建立多個session變數#回傳結果:#$result["status"],執行狀態,"true"代表執行成功;"false"代表執行失敗.#$reuslt["function"],當前執行的函數.#$result["error"],錯誤訊息陣列.#必填參數:#$conf["sessionArrayName"],字串陣列,要建立的session陣列變數名稱,建議可採用name1.name2.name3的格式。$conf["sessionArrayName"]=array("a","b","c");#$conf["sessionArrayValue"],字串陣列,session變數的內容要存放什麼呢?$conf["sessionArrayValue"]=array("A","B","C");#可省略參數:#無var_dump(session::createMulti($conf));unset($conf);var_dump($_SESSION["a"]);var_dump($_SESSION["b"]);var_dump($_SESSION["c"]);*/#提示目前測試的項目echo "<hr>session::getPreAndNowPosition - testCase 1<p>";/*#函式說明:#記錄當前訪問的頁面,並且保存上一個訪問的頁面.#回傳的結果:#$result["status"],執行狀態,"true"代表執行成功;"false"代表執行失敗。#$result["error"],錯誤訊息陣列.#$result["nowPosition"],現在訪問的頁面.#$result["prePosition"],上一個訪問的頁面.var_dump(session::getPreAndNowPosition());*/#提示目前測試的項目echo "<hr>session::getSessionValue - testCase 1<p>";/*#函式說明:#取得session變數裡面的數值,然後卸除該session變數#回傳的結果:#$result["status"],執行是否正常,"true"代表正常,"false"代表有誤.#$result["error"],錯誤訊息#$result["founded"],是否找到session變數,"true"代表找到,"false"代表沒找到.#$result["content"],取得的變數內容#必填的參數:#$conf["sessionVarName"],字串,要取得內容的session變數名稱$conf["sessionVarName"]="username";#可省略的參數:#$conf["unsetSessionVar"],字串,代表要卸除session變數,預設為"false"不卸除,"true"代表要卸除.#$conf["unsetSessionVar"]="true";#參考資料:#call-time-pass-by-reference-easy-fix-available=>http://stackoverflow.com/questions/8971261/php-5-4-call-time-pass-by-reference-easy-fix-available#可變變數=>http://emn178.pixnet.net/blog/post/80119035-php%E6%95%99%E5%AD%B8---%E8%AE%8A%E6%95%B8%28variables%29#卸除參考的原始變數=>http://stackoverflow.com/questions/6654538/php-function-to-unset-variables-passed-by-referencevar_dump(session::getSessionValue($conf));unset($conf);*/#提示目前測試的項目echo "<hr>session::getMultiSessionValues - testCase 1<p>";/*#測試用的session變數$_SESSION["a"]="A";$_SESSION["b"]="B";$_SESSION["c"]="C";#函式說明:#取得多個指定的session變數,並卸除之。#回傳結果:#$result["status"],執行狀態,"true"代表執行成功;"false"代表執行失敗。#$result["error"],錯誤訊息陣列#$result["function"],當前執行的函式名稱.#$result["founded"],是否找到所有的session變數,"true"代表找到,"false"代表沒找到.#$result["content"],取得的session變數內容陣列#必填的參數:$conf["sessionVarNameArray"]=array("a","b","c");#要取得內容的多個session變數名稱#可省略的參數:#$conf["keyArrayOfGotSessionValue"]=array("A","B","C");#取得的session變數是否要將其key從「0,1,2...」改成自定的「名稱1,名稱2,名稱3...」。#$conf["unsetSessionVars"]="false";#"true"代表要卸除取值完的session變數,反之"false"爲保留session變數,預設爲"true"。$result=session::getMultiSessionValues($conf);unset($conf);#檢查回傳的結果var_dump($result);#檢查session變數的狀況var_dump($_SESSION);*/#提示目前測試的項目echo "<hr>session::getMultiSessionValues - testCase 2<p>";/*#測試用的session變數$_SESSION["a"]="A";$_SESSION["b"]="B";$_SESSION["c"]="C";#函式說明:#取得多個指定的session變數,並卸除之。#回傳結果:#$result["status"],執行狀態,"true"代表執行成功;"false"代表執行失敗。#$result["error"],錯誤訊息陣列#$result["function"],當前執行的函式名稱.#$result["founded"],是否找到所有的session變數,"true"代表找到,"false"代表沒找到.#$result["content"],取得的session變數內容陣列#必填的參數:$conf["sessionVarNameArray"]=array("a","b","c");#要取得內容的多個session變數名稱#可省略的參數:$conf["keyArrayOfGotSessionValue"]=array("A","B","C");#取得的session變數是否要將其key從「0,1,2...」改成自定的「名稱1,名稱2,名稱3...」。#$conf["unsetSessionVars"]="false";#"true"代表要卸除取值完的session變數,反之"false"爲保留session變數,預設爲"true"。$result=session::getMultiSessionValues($conf);unset($conf);#檢查回傳的結果var_dump($result);#檢查session變數的狀況var_dump($_SESSION);*/#提示目前測試的項目echo "<hr>session::createMulti - testCase 1<p>";/*#函數說明:#建立多個session變數#回傳結果:#$result["status"],執行狀態,"true"代表執行成功;"false"代表執行失敗.#$reuslt["function"],當前執行的函數.#$result["error"],錯誤訊息陣列.#必填參數:#$conf["sessionArrayName"],字串陣列,要建立的session陣列變數名稱,建議可採用name1.name2.name3的格式。$conf["sessionArrayName"]=array("a","b","c");#$conf["sessionArrayValue"],字串陣列,session變數的內容要存放什麼呢?$conf["sessionArrayValue"]=array("A","B","C");#可省略參數:#無var_dump(session::createMulti($conf));unset($conf);*/#提示目前測試的項目echo "<hr>session::formVarToSession - testCase 1<p>";/*#涵式說明:#一個簡單的按鈕,按了可以到指定的頁面,同時也可以傳送多個隱藏的變數#回傳的結果#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.#$result["error"],錯誤訊息陣列#$result["function"],當前執行的函數名稱.#$result["content"],語法內容#必填的參數:$conf["buttonDisplayValue"]="傳送post表單變數";#按鈕上要顯示的文字#可以省略的參數:#$conf["buttonStyleName"]="";#按鈕的css樣式應該爲何,若省略的話預設會採用 __simpleButtonLinkDefaultButtonCssStyle 的樣式,其設定為"width:100%;height:50;font-size:30;text-align:center;$conf["hiddenVarName"]=array("post1","post2","post3");#要傳送的隱藏變數名稱,與 $conf["hiddenVarContent"] 相對應。$conf["hiddenVarContent"]=array("value1","value2","value3");#要傳誦的隱藏變數內容,與 $conf["hiddenVarName"] 相對應。#$conf["disabled"]="true";#可省略,為按鈕的功能是否要取消,若為"true"則代表要取消,若為"false"則代表功能正常,預設為"false".$conf["formStart"]="true";#爲是否要表單開始,如果爲"true"則代表要表單開始,預設爲"false".#$conf["method"]="";#爲傳輸的方法,若沒設定則預設爲post,其他可用的參數爲get。#$conf["formName"]="";#該表單的名稱$conf["actionPage"]=$_SERVER["PHP_SELF"];#按鈕按了之後要到哪個地方?若爲 $_SERVER["PHP_SELF"],則爲回到目前頁面。#$conf["buttonActionScriptFunction"]="";#可省略,爲按下按鈕時所要執行的javaScript函式,預設不設定。#可以是"document.forms.formName.submit()"(傳送名爲testForm的表單內容).$conf["formEnd"]="true";#爲是否要表單結束,如果爲"true"則代表要表單結束,預設爲"false"#$conf["tableStart"]="true";#爲是否要表格開始,"true"表示"是",預設為"false".#$conf["tableClass"]="__withoutBorder";#爲表格要採用的css樣式名稱,"__withoutBorder"代表沒有框線的預設樣式;"__withBorder"代表有框線的預設樣式,預設為"__withoutBorder".#$conf["trStart"]="true";#爲是否要以<tr>開頭,"true"表示"是"。也可以看作新的一列開始,預設為"false".#$conf["trClass"]="__withoutBorder";#列開始的css樣式,"__withoutBorder"代表沒有框線的預設樣式;"__withBorder"代表有框線的預設樣式,預設為"__withoutBorder"#$conf["tdStart"]="true";#爲是否要以<td>開頭,"true"表示"是"。也可以看成列裏面的元素開始,預設為"false"#$conf["tdClass"]="__withoutBorder";#行開始的css樣式,"__withoutBorder"代表沒有框線的預設樣式;"__withBorder"代表有框線的預設樣式,預設為"__withoutBorder"#$conf["tdEnd"]="true";#爲是否要以</td>結尾,"true"表示"是"。也可以看成列裏面的元素結束,預設為"false".#$conf["trEnd"]="true";#爲是否要以</tr>結尾,"true"表示"是"。也可以看作該列結束,預設為"false".#$conf["displayTarget"]="";#頁面的呈現方法,可以是開新視窗(_blank)、在目前頁面、頁框裏面(_self)、在父頁面(_parent)、最上層頁面(_top),預設為"_top"。#$conf["tableEnd"]="true";#爲是否要表格結束,"true"表示"是",預設為"false".echo form::sendHugeDataButton($conf)["content"];unset($conf);#函式說明:#接收post表單變數後另存成session變數#回傳結果:#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.#$result["errot"],錯誤訊息陣列.#$result["function"],當前的函數名稱.#必填參數:#$conf["checkedVarName"],字串陣列,要接收的表單變數名稱陣列,如果有缺就代表不通過.$conf["checkedVarName"]=array("post1","post2","post3");#可省參數:#$conf["limitPrePage"],字串陣列,為前一頁的名稱須為陣列元素之一,不滿足則代表不合法,因此要轉址。#$conf["limitPrePage"]=array();#$conf["transferLocation"],變數來的途徑不合法時要轉址到的地方,預設爲資安素養網"https://isafe.moe.edu.tw/#$conf["transferLocation"]="";#$conf["sessionArrayName"],字串陣列,各個表單變數要轉存成session變數時的key為何.$conf["sessionArrayName"]=array("var1","var2","var3");var_dump(session::formVarToSession($conf));unset($conf);var_dump($_SESSION);*/#提示目前測試的項目echo "<hr>session::formVarToSession - testCase 1<p>";/*#session_unset($_SESSION);$_SESSION["a"]["b"]["c"]=array("A1","B2","C3");#函式說明:#取得指定的session數值#回傳結果:#$result["status"],執行是否正常,"true"代表正常,"false"代表有誤.#$result["error"],錯誤訊息.#$result["founded"],是否有該session變數,"true"代表有,"false"代表沒有.#$result["content"],session變數的內容#$result["function"],當前執行的函數名稱.#$result["argu"],使用的參數.#必填參數:#$conf["key"],字串陣列,session的key名稱與層級.$conf["key"]=array("a","b","c");$getVal=session::getVal($conf);unset($conf);#如果執行失敗if($getVal["status"]==="false"){#印出內容var_dump($getVal);#結束程式exit;}#if end#印出內容var_dump($getVal);*/#提示目前測試的項目echo "<hr>session::setVal - testCase 1<p>";/*#設置指定的session變數#回傳結果:#$result["status"],執行是否正常,"true"代表正常,"false"代表有誤.#$result["error"],錯誤訊息.#$result["founded"],是否有該session變數,"true"代表有,"false"代表沒有.#$result["content"],session變數的內容#$result["function"],當前執行的函數名稱.#$result["argu"],使用的參數.#必填參數:#$conf["key"],字串陣列,session的key名稱與層級.$conf["key"]=array("a","b","c");#$conf["val"],任意型態,指定的session變數內容.$conf["val"]="ABC-def";$setVal=session::setVal($conf);unset($conf);#如果設置 session 變數失敗if($setVal["status"]==="false"){#印出內容var_dump($setVal);#結束程式exit;}#if end#印出內容var_dump($setVal);#檢查 sessionvar_dump($_SESSION);*/#提示目前測試的項目echo "<hr>session::setVal - testCase 2<p>";/*#設置指定的session變數#回傳結果:#$result["status"],執行是否正常,"true"代表正常,"false"代表有誤.#$result["error"],錯誤訊息.#$result["founded"],是否有該session變數,"true"代表有,"false"代表沒有.#$result["content"],session變數的內容#$result["function"],當前執行的函數名稱.#$result["argu"],使用的參數.#必填參數:#$conf["key"],字串陣列,session的key名稱與層級.$conf["key"]=array("a","b","c");#$conf["val"],任意型態,指定的session變數內容.$conf["val"]="ABC-def";#可省略參數:#$conf["storeAsNotRepeatArray"],字串,"true"代表要將變數內容存成陣列,預設為"false".$conf["storeAsNotRepeatArray"]="true";$setVal=session::setVal($conf);unset($conf);#如果設置 session 變數失敗if($setVal["status"]==="false"){#印出內容var_dump($setVal);#結束程式exit;}#if end#印出內容var_dump($setVal);#檢查 sessionvar_dump($_SESSION);*/#提示目前測試的項目echo "<hr>session::setMultiVal - testCase 1<p>";/*#函式說明:#設置多個session變數的內容#$result["status"],執行是否正常,"true"代表正常,"false"代表有誤.#$result["error"],錯誤訊息.#$result["founded"],是否有該session變數,"true"代表有,"false"代表沒有.#$result["content"],每個設置好的session變數資訊#$result["function"],當前執行的函數名稱.#$result["argu"],使用的參數.#必填參數:#$conf["key"],二維陣列,每個session的key名稱與層級.$conf["key"]=array(array("n1",1),array("n2",2),array("3n","c"));#$conf["val"],陣列,每個指定的session變數內容.$conf["val"]=array("v1",array("v2"),3);$setMultiVal=session::setMultiVal($conf);unset($conf);#如果執行失敗if($setMultiVal["status"]==="false"){#印出內容var_dump($setMultiVal);#結束程式exit;}#if end#印出內容var_dump($setMultiVal);#檢查 sessionvar_dump($_SESSION);*/#提示目前測試的項目echo "<hr>session::setMultiVal - testCase 2<p>";/*#函式說明:#設置多個session變數的內容#$result["status"],執行是否正常,"true"代表正常,"false"代表有誤.#$result["error"],錯誤訊息.#$result["founded"],是否有該session變數,"true"代表有,"false"代表沒有.#$result["content"],每個設置好的session變數資訊#$result["function"],當前執行的函數名稱.#$result["argu"],使用的參數.#必填參數:#$conf["key"],二維陣列,每個session的key名稱與層級.$conf["key"]=array(array("n1",1),array("n2",2),array("3n","c"));#$conf["val"],陣列,每個指定的session變數內容.$conf["val"]=array("v1",array("v2"),3);#可省略參數:#$conf["storeAsNotRepeatArray"],字串,"true"代表要將變數內容存成陣列,預設為"false".$conf["storeAsNotRepeatArray"]="true";$setMultiVal=session::setMultiVal($conf);unset($conf);#如果執行失敗if($setMultiVal["status"]==="false"){#印出內容var_dump($setMultiVal);#結束程式exit;}#if end#印出內容var_dump($setMultiVal);#檢查 sessionvar_dump($_SESSION);*/?>