亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > PHP > 正文

PHP基于PDO調用sqlserver存儲過程通用方法【基于Yii框架】

2024-05-05 00:00:23
字體:
來源:轉載
供稿:網友

本文實例講述了PHP基于PDO調用sqlserver存儲過程的方法。分享給大家供大家參考,具體如下:

由于業務這邊存儲過程一直在sqlserver上面,所以要用php去調用它,然而我們本地的是windows,而線上又是linux,一開始使用Yii框架的一些機制去調用發現在本地一直都是好的然而到線上就不行了,找了很多方案,最后找到了pdo這種方案,而本地使用的驅動是sqlsrv線上是dblib所以需要注意下鏈接pdo時的驅動形式,在取結果集的時候注意windows和linux好像有所不同,在我加上set nocount on后win若果直接取結果就可以拿到最后的,然而放到linux就沒了,氣死人的說,索性最后我把所有的都取一遍;

分享整理后的一個方法:

class StoredProcHelper{  private static $type = [   'integer'=>PDO::PARAM_INT,   'string'=>PDO::PARAM_STR,   'null'=>PDO::PARAM_NULL,   'boolean'=>PDO::PARAM_BOOL  ];  private $sql = '';//此變量在下方說明  private $params = [];//此變量在下方說明  private $connect_info;//此變量在下方說明  private $pdo_connect;  public function __construct($connect_info,$sql,$params){    $this->sql = 'SET NOCOUNT ON;'.$sql;    $this->params = $params;    $this->connect_info = $connect_info;    if(!empty($this->connect_info->dsn) && !empty($this->connect_info->username) && !empty($this->connect_info->password)){      $this->pdo_connect = new PDO($this->connect_info->dsn,$this->connect_info->username, $this->connect_info->password);    }  }  public function ExecuteProc(){    $link = $this->pdo_connect->prepare($this->sql);    foreach ($this->params as $key => $value){      $link->bindParam($key,$value,self::$type[strtolower(gettype($value))]);    }    $link->execute();    $i = 1;    $res[0] = $link->fetchAll();    while($link->nextRowset()){      $res[$i] = $link->fetchAll();      $i++;    }    return $res;  }}

使用舉例:

public static function Example($connect_info,$mobile){    $sql='declare @customParam int;exec you_proc @Mobile = :mobile,@OutParam=@customParam out;select @customParam as outName;';    $params = [      ':mobile'=>$mobile    ];    $pdo = new StoredProcHelper($connect_info,$sql,$params);    $res = $pdo->ExecuteProc();    var_dump($res);  }

變量$sql和$params的形式如例子中表現的;

變量$connect_info的形式如下【因為本人是在Yii框架 下使用的,所以以此變量是直接根據Yii來獲取數據庫鏈接配置來進行的,如果自己有所不同可以自行更改形式以及賦值形式,在框架中方便的是不同環境下直接獲取配置能分別獲取到是sqlsrv和dblib,不需要自行去更改】:

[  'dsn' => 'sqlsrv:Server=xxxxxxxxxx;Database=xxxxx',  'username' => 'xxxxx',  'password' => 'xxxxxxxxxxxxxxxxxxxx',  'charset' => 'utf8',]//或[  'dsn' => 'dblib:host=xxxxxxxxxx;dbname=xxxxx',  'username' => 'xxxxx',  'password' => 'xxxxxxxxxxxxxxxxxxxx',  'charset' => 'utf8',],

 

希望本文所述對大家PHP程序設計有所幫助。


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
色香阁99久久精品久久久| 91精品国产99| 精品久久久久久| 高清欧美性猛交xxxx黑人猛交| 日韩亚洲一区二区| 亚洲成人亚洲激情| 欧美电影院免费观看| 中文在线资源观看视频网站免费不卡| 欧美在线观看网站| 亚洲精品电影网在线观看| 国产精品第3页| 久久久久五月天| 欧美裸身视频免费观看| 亚洲激情在线观看| 亚洲人成欧美中文字幕| 97欧美精品一区二区三区| 色av中文字幕一区| 91色琪琪电影亚洲精品久久| 亚洲美女喷白浆| 欧美亚洲另类激情另类| 亚洲综合在线中文字幕| 亚洲福利在线观看| xxx成人少妇69| 国产97人人超碰caoprom| 欧美成人精品一区| 国产成人午夜视频网址| 国产精品亚洲自拍| 亚洲一区免费网站| 欧美一级大片在线观看| 在线播放国产一区二区三区| wwwwwwww亚洲| 亚洲国产成人av在线| 国产精品人成电影在线观看| 久久精品91久久久久久再现| 97视频在线观看免费高清完整版在线观看| 午夜美女久久久久爽久久| 中文字幕国产精品| 亚洲一区二区久久| 日韩精品在线观看一区| 欧美巨乳美女视频| 米奇精品一区二区三区在线观看| 久久不射电影网| 欧美成人精品一区二区| 日韩美女av在线免费观看| 97超碰国产精品女人人人爽| 欧美成人中文字幕| 热99精品只有里视频精品| 国产丝袜一区二区三区免费视频| 久久99热这里只有精品国产| 欧美日韩国产成人在线| 国产精品日韩精品| 久久久久久久久久av| 亚洲伊人成综合成人网| 亚洲伊人一本大道中文字幕| 日韩中文字幕在线视频播放| 在线观看日韩专区| 久久精品国产精品亚洲| 日韩av影片在线观看| 精品视频在线观看日韩| 欧美中文字幕第一页| 国产欧美一区二区三区视频| 日av在线播放中文不卡| 国产精欧美一区二区三区| 国产精品直播网红| 97色在线播放视频| 精品动漫一区二区三区| 国语自产精品视频在线看| 亚洲深夜福利网站| 国产精品久久久久久久app| 国产日产久久高清欧美一区| 亚洲第一精品电影| 97超级碰碰人国产在线观看| 5566日本婷婷色中文字幕97| 欧美在线视频网站| 国产精品观看在线亚洲人成网| 色噜噜狠狠狠综合曰曰曰| 欧美福利视频网站| 日本中文字幕成人| 亚洲福利视频专区| 日韩精品在线观看一区二区| 国产三级精品网站| 亚洲人成绝费网站色www| 91精品国产综合久久男男| 亚洲香蕉伊综合在人在线视看| 亚洲精品一二区| 日韩精品极品视频| 日韩精品在线观看一区二区| 亚洲最大中文字幕| 国产亚洲欧洲在线| 欧美大片网站在线观看| 精品日本高清在线播放| 色偷偷偷亚洲综合网另类| 国产999精品久久久| 一区二区国产精品视频| 国产日本欧美一区| 九九热这里只有精品6| 在线亚洲欧美视频| 精品性高朝久久久久久久| 一本大道久久加勒比香蕉| 久久天天躁狠狠躁夜夜躁| 国产欧美欧洲在线观看| 亚洲综合自拍一区| 国产美女久久久| 青青草成人在线| 亲子乱一区二区三区电影| 国产精品网址在线| 久久伊人精品一区二区三区| 欧美大全免费观看电视剧大泉洋| 国产精品情侣自拍| 热久久99这里有精品| 日本久久久久亚洲中字幕| 国产一区欧美二区三区| 亚洲а∨天堂久久精品喷水| 久久99国产精品久久久久久久久| 欧美另类69精品久久久久9999| 久久久亚洲网站| 日本免费一区二区三区视频观看| 亚洲jizzjizz日本少妇| 亚洲免费精彩视频| 色综合色综合久久综合频道88| 亚洲偷欧美偷国内偷| 日韩视频在线一区| 亚洲综合色av| 欧美日韩国产在线看| 亚洲欧洲在线看| 亚洲女人初尝黑人巨大| 95av在线视频| 激情亚洲一区二区三区四区| 91在线精品播放| 97视频在线观看播放| 欧美久久精品午夜青青大伊人| 欧美黄色片免费观看| 国产精品久久久久久久久久久久久久| 日韩欧美精品网站| 激情av一区二区| 久久男人的天堂| 欧美日韩中文在线观看| 国产精品免费一区| 欧美精品18videos性欧美| 欧美一级淫片aaaaaaa视频| 日韩福利伦理影院免费| 国产精品视频在线观看| 国产精品亚洲视频在线观看| 日本道色综合久久影院| 亚洲成av人影院在线观看| 国产啪精品视频网站| 欧美成人免费在线观看| 久久久女女女女999久久| 久久在线精品视频| 久久精品人人爽| 亚洲精品aⅴ中文字幕乱码| 国内精品国产三级国产在线专| 国产视频久久网| 成人亲热视频网站| 亚洲成人免费在线视频| 国精产品一区一区三区有限在线| 久久久久久这里只有精品| 久久人人爽国产| 亚洲国产成人久久| 免费不卡在线观看av| 日韩av网站大全| 欧美天天综合色影久久精品| 韩国v欧美v日本v亚洲| 91国语精品自产拍在线观看性色|