PHP 訪問(wèn)數(shù)據(jù)庫(kù)配置通用方法(json)
提取一種對(duì)數(shù)據(jù)庫(kù)配置的通用方式
目的是通過(guò)通用類訪問(wèn)配置文件的方式,提供對(duì)數(shù)據(jù)庫(kù)連接的動(dòng)態(tài)獲取和設(shè)置,使開發(fā)時(shí)和生產(chǎn)應(yīng)用時(shí)都能夠提供靈活的、簡(jiǎn)化的、解耦的操作方式。比如在配置文件中配置好兩套數(shù)據(jù)庫(kù)訪問(wèn)內(nèi)容,一套測(cè)試庫(kù)訪問(wèn)地址,一套生產(chǎn)庫(kù)訪問(wèn),在需要獲取連接信息時(shí),只要填入符合的參數(shù)即可
結(jié)構(gòu)
- 工廠模式,傳參,返回結(jié)果;
- 成功返回 array,否則返回 string 錯(cuò)誤信息;
- 兩個(gè)文件配合工作,一個(gè)是json格式配置文件,負(fù)責(zé)保存數(shù)據(jù)庫(kù)連接內(nèi)容,另一個(gè)是讀取類,負(fù)責(zé)讀取和檢索,返回結(jié)果;
使用方式
- 定義配置文件為
db-config.json
,內(nèi)容為數(shù)據(jù)庫(kù)連接信息; - 讀取類
db-config.php
提供公共靜態(tài)訪問(wèn),供上層接口調(diào)用; - 上層接口使用接口方法$db_conf = DbConf::Conf("debug");檢索debug為標(biāo)志的數(shù)據(jù)庫(kù)連接信息。如有 $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ù)的實(shí)例
- JSON PHP中,Json字符串反序列化成對(duì)象/數(shù)組的方法
- php curl獲取到j(luò)son對(duì)象并轉(zhuǎn)成數(shù)組array的方法
- PHP給前端返回一個(gè)JSON對(duì)象的實(shí)例講解
- PHP以json或xml格式返回請(qǐng)求數(shù)據(jù)的方法
- PHP連接MySQL數(shù)據(jù)庫(kù)并以json格式輸出
- PHP基于CURL發(fā)送JSON格式字符串的方法示例
- php讀取本地json文件的實(shí)例
- 深入淺析JSONAPI在PHP中的應(yīng)用
- PHP實(shí)現(xiàn)發(fā)送和接收J(rèn)SON請(qǐng)求
相關(guān)文章
php基于str_pad實(shí)現(xiàn)卡號(hào)不足位數(shù)自動(dòng)補(bǔ)0的方法
這篇文章主要介紹了php基于str_pad實(shí)現(xiàn)卡號(hào)不足位數(shù)自動(dòng)補(bǔ)0的方法,對(duì)于生成固定位數(shù)號(hào)碼的應(yīng)用非常具有實(shí)用價(jià)值,需要的朋友可以參考下2014-11-11php用數(shù)組返回?zé)o限分類的列表數(shù)據(jù)的代碼
php自定義函數(shù)之用數(shù)組返回?zé)o限分類的列表數(shù)據(jù),這樣的實(shí)現(xiàn)可以提高執(zhí)行的效率不要每次都從數(shù)據(jù)庫(kù)讀取數(shù)據(jù)。2010-08-08php中使用array_filter()函數(shù)過(guò)濾數(shù)組實(shí)例講解
在本篇文章里小編給大家分享的是一篇關(guān)于php中使用array_filter()函數(shù)過(guò)濾數(shù)組實(shí)例講解,有興趣的朋友們可以學(xué)習(xí)下。2021-03-03php用wangeditor3實(shí)現(xiàn)圖片上傳功能
在本篇文章中小編給大家整理的是關(guān)于php用wangeditor3實(shí)現(xiàn)圖片上傳功能的實(shí)例代碼和相關(guān)內(nèi)容,有需要的朋友們學(xué)習(xí)下。2019-08-08php的POSIX 函數(shù)以及進(jìn)程測(cè)試的深入分析
本篇文章是對(duì)php的POSIX函數(shù)以及進(jìn)程測(cè)試進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06解析php中static,const與define的使用區(qū)別
本篇文章是對(duì)php中static,const與define的使用區(qū)別進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06