亚洲精品久久久久久第一页-人妻少妇精彩视品一区二区三区-91国产自拍免费视频-免费一级a在线播放视频正片-少妇天天日天天射天天爽-国产大屁股喷水视频在线观看-操美女骚穴抽插性爱视频-亚洲 欧美 中文字幕 丝袜-成人免费无码片在线观看

Api 國內PHP開源接口框架 api管理系統(tǒng)php源碼( 二 )


我們要盡可能的不使用教科書上的通用的寫法,盡可能搞一套自己的寫法 。
下面是DaYeLaiWanA.php的代碼:
<?php//接口文件,單獨調用這個文件沒任何作用,參數必須得對,差一個字母這個文件都運行不出個毛線來 。//而參數是你自己定的,可隨意加密修改 。//當然你還可以把這個路徑也放到變量里,然后藏起來 。include "./iLaoZhao_funs/postget.php"; //沒有依賴,但也不實現(xiàn)任何具體功能include "./iLaoZhao_funs/login.php"; //依賴pdo,dbfuns,postget和接口文件include "./iLaoZhao_funs/curl.php"; //沒有依賴,但也不實現(xiàn)任何具體功能include "./iLaoZhao_funs/dbfuns.php"; //依賴pdo和接口文件//上面這些文件里涉及到安全的功能都有依賴,并且他們不知道要用的函數在哪//全靠這個接口文件把它們組合到一起//并且上面的函數里也會用到接口文件的函數(就是下面那個)//這些因素缺一不可,只能由接口文件來整合他們//上面這些文件和其它的API文件,都無法單獨運行 。不是缺這就是缺那 。//下面這倆函數是故意沒單獨放文件里的,為的就是其它文件缺少這個接口文件時在調用這個函數時會出錯 。function output2Die($msg, $code = -1, $datahttps://www.520longzhigu.com/diannao/= ''){$dieMsg['code'] = $code;$dieMsg['msg'] = $msg;$dieMsg['data'] = $data;echo json_encode($dieMsg);die();}function isPhone($phonenumber){return preg_match("/^1[3-9]d{9}$/", $phonenumber);}$area = POST("area");//要使用的API種類$class = POST("class");//要使用的API小分類$fun = POST("fun");//要使用的API功能//清理POSTunset($_POST['area']);unset($_POST['class']);unset($_POST['fun']);if ($class !== FALSE && $fun !== FALSE){if ($area == false){$area = "public";}//生成API文件全名,這里沒加密,你可以自己變動這里 。$incFile = dirname(__FILE__)."/{$area}/{$class}/{$fun}.php";if (file_exists($incFile)){ //檢查API文件是否存在,其實不檢查也行 。include "./config/pdodb.php"; //創(chuàng)建數據庫連接,依賴接口文件include $incFile;//將單獨的API文件導入進來}else{//我因為調試的原因,顯示了錯誤信息,要求高的可以去掉 。output2Die("無效的請求", -1);}}else{output2Die("無效的請求", -2);}文件我寫了注釋,方便大家看,實際在使用時不能有這些注釋,這些注釋只能方便別人破解我們的系統(tǒng),并且這個接口文件盡可能進行代碼混淆加密 。
然后是一個獲得當前用戶信息的小例子API,這個API文件存在了/iLaoZhao_api/public/login/usrMsg.php里面 。在調用時大概URL是這樣:
https://你的域名/iLaoZhao_api/DaYeLaiWanA.phpPOST數據為:{key:"用戶名密碼時間加密字符串運算后的結果",class:"login",fun:"usrMsg",userName:"該用戶的用戶名"}API代碼內容usrMsg.php為:
<?php//示例文件,得到當前用戶的所有信息//文件依賴:接口文件、數據庫連接文件、dbfuns文件、login文件//單獨訪問這個文件根本不能運行//依賴關系完全靠接口文件處理//這個API讀取post參數中的userNamecheckUserNamePassWord(); //檢查用戶名密碼,不對真接就終止運行了,對了的話就可以運行下面的代碼$dbArr['userName'] = POST("userName");if($dbArr['userName'] !== false){ //這一步沒必要,能驗證過上面那個函數,這個參數肯定存在,但我就是寫了,就是玩兒//一定要用PDO的綁定功能訪問數據庫,這種方式能避免SQL注入 。$sql = "select * from tb_users where users_userName = :userName";$rec = db_query($sql,$dbArr);if($rec['count'] > 0){output2Die("成功 。",1,$rec);}else{output2Die("找不到該用戶 。",-1); //要求高的,不要輸出錯誤信息 。}}output2Die("失敗",-2); //要求高的,不要輸出錯誤信息 。這里面的checkUserNamePassWord()函數(在iLaoZhao_funs文件夾內的login.php文件里)也比較關鍵:


以上關于本文的內容,僅作參考!溫馨提示:如遇健康、疾病相關的問題,請您及時就醫(yī)或請專業(yè)人士給予相關指導!

「愛刨根生活網」www.malaban59.cn小編還為您精選了以下內容,希望對您有所幫助: