Rev 239 | Blame | Compare with Previous | Last modification | View Log | RSS feed
<?php/*QBPWCF, Quick Build PHP website Component base on Fedora Linux.Copyright (C) 2014~2026 MIN ZHI, CHENThis file is part of QBPWCF.QBPWCF is free software: you can redistribute it and/or modifyit under the terms of the GNU General Public License as published bythe Free Software Foundation, either version 3 of the License, or(at your option) any later version.QBPWCF is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See theGNU General Public License for more details.You should have received a copy of the GNU General Public Licensealong with QBPWCF. If not, see <http://www.gnu.org/licenses/>.*/#使用 qbpwcf 命名空間namespace qbpwcf;#取得 lib pathexec("php -f ".escapeshellarg(pathinfo(__FILE__)["dirname"]."/usr/bin/libexec/folderOfUsrLib.php"),$output,$status);#如果執行失敗if($status!==0){#debugvar_dump(__LINE__,$output);#結束執行,回傳shell 1.exit(1);}#if end#儲存lib path$folderOfUsrLib=$output[0];#以該檔案的實際位置的 lib path 為 include path 首位$output=array();exec("cd ".escapeshellarg(pathinfo(__FILE__)["dirname"]."/usr/".$folderOfUsrLib."/qbpwcf").";pwd;",$output,$status);#如果執行失敗if($status!==0){#debugvar_dump(__LINE__,$output);#結束執行,回傳shell 1.exit(1);}#if end#設置 include pathset_include_path($output[0].PATH_SEPARATOR.get_include_path());#匯入套件require_once("allInOne.php");#建議的log位置$logFile=$_SERVER["DOCUMENT_ROOT"].$_SERVER["PHP_SELF"].".log";#web page title$title="PHP libary for quick build php website based on Fedora Linux(a.k.a. ,Low code platform library).";#設置 title#函式說明:#建立網頁的標題,納入網絡搜尋的依據.#回傳的內容:#$result["status"],字串,"true"爲成功,"false"反之失敗.#$result["error"],陣列,錯誤訊息.#$result["function"],字串,當前執行的函數名稱.#$result["content"],字串,設定網頁資訊的字串變數.#必填參數:#$conf["title"],字串,網頁的標題.$conf["title"]=$title;#可省略參數:#$conf["desc"],字串,網站的描述.#$conf["desc"]=$title;#參考資料:#無.#備註:#無.$setPageInfo=header::setPageInfo($conf);unset($conf);#如果執行失敗if($setPageInfo["status"]==="false"){#函式說明:#撰寫log#回傳結果:#$result["status"],狀態,"true"或"false".#$result["error"],錯誤訊息陣列.#$result["function"],當前函式的名稱.#$result["argu"],使用的參數.#$result["content"],要寫入log的內容字串.#必填參數:#$conf["path"],字串,log檔案的路徑與名稱.$conf["path"]=$logFile;#$conf["content"],any,要寫的內容,若內容不為字串則會用var_dump的格式寫入.$conf["content"]=$setPageInfo;#$conf["fileArgu"],字串,php變數__FILE__的內容,亦即該檔案在檔案系統的絕對路徑$conf["fileArgu"]=__FILE__;#可省略參數:#$conf["rewrite"],預設為"false",接續寫入;反之"true"代表重新寫入.#$conf["rewrite"]="false";#$conf["returnOnly"],預設為"false",會寫入到log檔案.若為"true"則不會寫入log.#$conf["returnOnly"]="true";#參考資料:#無.#備註:#無.$record=logs::record($conf);unset($conf);#如果執行失敗if($record["status"]==="false"){#印出結果var_dump($record);#結束執行exit;}#if end#結束執行exit;}#if end#印出語法echo $setPageInfo["content"];#函式說明:#依據行號分隔抓取檔案的內容,結果會回傳一個陣列#回傳的變數說明:#$result["status"],執行是否成功,"true"代表成功;"fasle"代表失敗.#$result["error"],錯誤訊息提示.#$result["warning"],警告訊息.#$result["function"],當前執行的函數名稱.#$result["fileContent"],爲檔案的內容陣列.#$result["lineCount"],爲檔案內容總共的行數.#$result["fullContent"],為檔案的完整內容.#$result["base64data"],為檔案的base64內容.#$result["mimeType"],為檔案的mime type.#必填參數:#$conf["filePositionAndName"],字串,爲檔案的位置以及名稱.$conf["filePositionAndName"]="Release Note";#$conf["fileArgu"],字串,php變數__FILE__的內容,亦即該檔案在檔案系統的絕對路徑$conf["fileArgu"]=__FILE__;#可省略參數:#$conf["web"],是要取得網路上的檔案則為"true";反之預設為"false".#$conf["web"]="true";#$conf["createIfnotExist"],字串,預設為"false"代表檔案不存在也不需要建立;反之為"true".#$conf["createIfnotExist"]="false";#參考資料:#file(),取得檔案內容的行數.#file=>http:#php.net/manual/en/function.file.php#rtrim(),剔除透過file()取得每行內容結尾的換行符號.#filesize=>http://php.net/manual/en/function.filesize.php#參考資料:#無.#備註:#無.$getFileContent=fileAccess::getFileContent($conf);unset($conf);#如果執行失敗if($getFileContent["status"]==="false"){#函式說明:#設定session變數後,立即轉址.#回傳的結果:#$result["status"],執行是否成功,"true"代表成功,"false"代表不成功.#$result["function"],當前執行的函數名稱.#$result["error"],錯誤訊息陣列.#必填參數:#$conf["headerLocation"],為要轉址到的地方,若爲 $_SERVER["PHP_SELF"],則爲回到目前頁面,全民資安素養網爲 https://isafe.moe.edu.tw/.$conf["headerLocation"]="https://sourceforge.net/projects/qbpwc/";#可省略參數:#$conf["sessionName"],字串陣列,可以指派session變數的名稱.#$conf["sessionName"]=array("");#$conf["sessionValue"]字串陣列,可以指派session變數的內容.#$conf["sessionValue"]=array("");#參考資料:#http://php.net/manual/en/reserved.variables.server.php#備註:#無.$redirectionNow=header::redirectionNow($conf);unset($conf);#如果執行失敗if($redirectionNow["status"]==="false"){#函式說明:#撰寫log#回傳結果:#$result["status"],狀態,"true"或"false".#$result["error"],錯誤訊息陣列.#$result["function"],當前函式的名稱.#$result["argu"],使用的參數.#$result["content"],要寫入log的內容字串.#必填參數:#$conf["path"],字串,log檔案的路徑與名稱.$conf["path"]=$logFile;#$conf["content"],any,要寫的內容,若內容不為字串則會用var_dump的格式寫入.$conf["content"]=$redirectionNow;#$conf["fileArgu"],字串,php變數__FILE__的內容,亦即該檔案在檔案系統的絕對路徑$conf["fileArgu"]=__FILE__;#可省略參數:#$conf["rewrite"],預設為"false",接續寫入;反之"true"代表重新寫入.#$conf["rewrite"]="false";#$conf["returnOnly"],預設為"false",會寫入到log檔案.若為"true"則不會寫入log.#$conf["returnOnly"]="true";#參考資料:#無.#備註:#無.$record=logs::record($conf);unset($conf);#如果執行失敗if($record["status"]==="false"){#印出結果var_dump($record);#結束執行exit;}#if end#結束執行exit;}#if end}#if end#var_dump($getFileContent["fileContent"]);exit;#函式說明:#顯示多行文字.#回傳的結果:#$result["status"],執行是否正常,"true"為正常,"false"為不正常.#$result["error"],錯誤訊息陣列.#$result["function"],當前執行的函數名稱.#$result["content"],語法.#必填參數:#$conf["string"],字串陣列,要放置的內容.$conf["string"]=$getFileContent["fileContent"];#可省略參數:#$conf["class"],字串,要使用的css樣式名稱,預設為"__defaultTextStyle"#$conf["class"]="";#$conf["type"],字串,要用"div"或"divNoWrap"或"span"或"br"或"p"或"EOL"或"textarea"來段行,預設為"EOL".$conf["type"]="textarea";#參考資料:#無.#備註:#無.$multiLine=text::multiLine($conf);unset($conf);#如果執行失敗if($multiLine["status"]==="false"){#函式說明:#撰寫log#回傳結果:#$result["status"],狀態,"true"或"false".#$result["error"],錯誤訊息陣列.#$result["function"],當前函式的名稱.#$result["argu"],使用的參數.#$result["content"],要寫入log的內容字串.#必填參數:#$conf["path"],字串,log檔案的路徑與名稱.$conf["path"]=$logFile;#$conf["content"],any,要寫的內容,若內容不為字串則會用var_dump的格式寫入.$conf["content"]=$multiLine;#$conf["fileArgu"],字串,php變數__FILE__的內容,亦即該檔案在檔案系統的絕對路徑$conf["fileArgu"]=__FILE__;#可省略參數:#$conf["rewrite"],預設為"false",接續寫入;反之"true"代表重新寫入.#$conf["rewrite"]="false";#$conf["returnOnly"],預設為"false",會寫入到log檔案.若為"true"則不會寫入log.#$conf["returnOnly"]="true";#參考資料:#無.#備註:#無.$record=logs::record($conf);unset($conf);#如果執行失敗if($record["status"]==="false"){#印出結果var_dump($record);#結束執行exit;}#if end#結束執行exit;}#if end#印出結果echo $multiLine["content"];?>