PHP 訪問數(shù)據(jù)庫配置通用方法(json)
提取一種對數(shù)據(jù)庫配置的通用方式
目的是通過通用類訪問配置文件的方式,提供對數(shù)據(jù)庫連接的動態(tài)獲取和設(shè)置,使開發(fā)時和生產(chǎn)應(yīng)用時都能夠提供靈活的、簡化的、解耦的操作方式。比如在配置文件中配置好兩套數(shù)據(jù)庫訪問內(nèi)容,一套測試庫訪問地址,一套生產(chǎn)庫訪問,在需要獲取連接信息時,只要填入符合的參數(shù)即可
結(jié)構(gòu)
- 工廠模式,傳參,返回結(jié)果;
- 成功返回 array,否則返回 string 錯誤信息;
- 兩個文件配合工作,一個是json格式配置文件,負責保存數(shù)據(jù)庫連接內(nèi)容,另一個是讀取類,負責讀取和檢索,返回結(jié)果;
使用方式
- 定義配置文件為
db-config.json
,內(nèi)容為數(shù)據(jù)庫連接信息; - 讀取類
db-config.php
提供公共靜態(tài)訪問,供上層接口調(diào)用; - 上層接口使用接口方法$db_conf = DbConf::Conf("debug");檢索debug為標志的數(shù)據(jù)庫連接信息。如有 $db_conf 為數(shù)組格式;
見代碼
{ "debug": { "db_host": "", "db_name": "", "db_user": "", "db_password": "" } }
php類
<?php class DbConf{ public static function Conf( $conf_name ){ if(empty($conf_name)){ die("Illegal parameter"); } $from = "localhost"; // allow legal host only if(!isset($_SERVER['HTTP_HOST']) || $_SERVER['HTTP_HOST']!=$from){ die("Unauthorized access"); } $json_config = file_get_contents('db-config.json'); $json_data = json_decode($json_config, true); if( array_key_exists($conf_name, $json_data)){ return $json_data[$conf_name]; }else{ return "Not Found"; } } }
這篇文章就介紹到這了,需要的朋友可以參考一下
- php post json參數(shù)的傳遞和接收處理方法
- PHP調(diào)用接口用post方法傳送json數(shù)據(jù)的實例
- JSON PHP中,Json字符串反序列化成對象/數(shù)組的方法
- php curl獲取到j(luò)son對象并轉(zhuǎn)成數(shù)組array的方法
- PHP給前端返回一個JSON對象的實例講解
- PHP以json或xml格式返回請求數(shù)據(jù)的方法
- PHP連接MySQL數(shù)據(jù)庫并以json格式輸出
- PHP基于CURL發(fā)送JSON格式字符串的方法示例
- php讀取本地json文件的實例
- 深入淺析JSONAPI在PHP中的應(yīng)用
- PHP實現(xiàn)發(fā)送和接收JSON請求
相關(guān)文章
php基于str_pad實現(xiàn)卡號不足位數(shù)自動補0的方法
這篇文章主要介紹了php基于str_pad實現(xiàn)卡號不足位數(shù)自動補0的方法,對于生成固定位數(shù)號碼的應(yīng)用非常具有實用價值,需要的朋友可以參考下2014-11-11php用數(shù)組返回無限分類的列表數(shù)據(jù)的代碼
php自定義函數(shù)之用數(shù)組返回無限分類的列表數(shù)據(jù),這樣的實現(xiàn)可以提高執(zhí)行的效率不要每次都從數(shù)據(jù)庫讀取數(shù)據(jù)。2010-08-08php中使用array_filter()函數(shù)過濾數(shù)組實例講解
在本篇文章里小編給大家分享的是一篇關(guān)于php中使用array_filter()函數(shù)過濾數(shù)組實例講解,有興趣的朋友們可以學習下。2021-03-03解析php中static,const與define的使用區(qū)別
本篇文章是對php中static,const與define的使用區(qū)別進行了詳細的分析介紹,需要的朋友參考下2013-06-06