PHP 5.6.11 SQL Server 2008 R2 에 접근 하 는 몇 가지 상황 에 대한 상세 한 설명

PHP 는 천성적으로 MySQL 을 지원 하지만 때로는 SQL Server 에 접근 시 키 려 고 합 니 다.어떻게 해 야 합 니까?
최근 에 자 료 를 찾 았 습 니 다.테스트 는 PHP 가 SQLSvr 에 접근 하 는 몇 가지 상황 에 성 공 했 습 니 다.시간 에 한 하여 더 많은 환경 을 테스트 하지 못 했 습 니 다.테스트 한 기록 은 다음 과 같 습 니 다.
테스트 환경:win 7 x64 sp1,IIS 7.5,Apache 2.4 32 비트 버 전,PHP 5.2.6 win 32,PHP 5.6.11 win 32 ts(스 레 드 보안 버 전)
주:"Microsoft Drivers for PHP for SQL Server"드라이버 는 현재 32 비트 버 전 이기 때문에 sql server 데이터 베 이 스 를 사용 하 는 친구 라면 phop 64 비트 를 사용 하 는 것 을 권장 하지 않 습 니 다.그렇지 않 으 면 sql server 데이터 베 이 스 를 연결 할 수 없 는 문제 가 발생 할 수 있 습 니 다!
php 5.2.6 iis 에서 sql 2000 방문 성공
php 5.2.6 iis 에서 sql 2008 r2 를 성공 적 으로 방문 하 였 습 니 다.
php 5.6.11 apache 에서 sql 2008 r2 를 성공 적 으로 방문 하 였 습 니 다.
【5.2.6 -> SQL2000】
왜 5.2.6 이렇게 오래된 phop 버 전 으로 테스트 를 해 야 합 니까?phop 5.2 버 전 으로 phop 이 내장 되 어 있 기 때 문 입 니 다.mssql.dll 모듈,
php.ini 의 extension=php 를 열 었 습 니 다.mssql.dll 설정 옵션,기본적으로 mssql 2000 을 지원 하 는 것 같 습 니 다.
phpinfo 를 열 면 지원 모듈 내용 을 볼 수 있 습 니 다:

PS.IIS 7.0 에서 PHP 를 설치 하 는 것 이 편리 합 니 다.제3자 작은 도구 인 PHP Manager 를 통 해 설치 할 수도 있 고 iis 의 phop 버 전 을 편리 하 게 전환 할 수도 있 습 니 다.이것 은 본 고의 주요 내용 이 아니 므 로 여기 서 소개 하지 않 겠 습 니 다.
php manager for iis 7 다운로드 설치 주소:http://phpmanager.codeplex.com/


테스트 루틴 을 작성 합 니 다:

<?php
$server ="127.0.0.1\sql2000"; //   IP  ,     ,    localhost
$uid ="sa"; //   
$pwd ="yoooko"; //  
$database ="master"; //     
//       
$conn =mssql_connect($server,$uid,$pwd) or die ("connect failed");
mssql_select_db($database,$conn);
//      
$query ="select * from cs";
$row =mssql_query($query);
//        
while($list=mssql_fetch_array($row))
{
print_r($list);
echo "<br>";
}
?>
IIS 7.5 에서 실행 결 과 는 다음 과 같 습 니 다:성공!

【5.6.11 -> SQL2008R2】
5.6 이상 의 PHP 는 php 가 없습니다.mssql.dll,sql 2000 이상 버 전의 sql server 를 원생 지원 하지 않 는 것 같 습 니 다.제3자 모듈 을 통 해 마이크로소프트 홈 페이지 에서 찾 아야 합 니 다.
Microsoft Drivers for PHP for SQL Server
http://www.microsoft.com/en-us/download/details.aspx?id=20098
다운로드 링크 주소 에는 네 개의 파일 이 있 습 니 다.
•SQLSRV30.EXE
•SQLSRV31.EXE
•SQLSRV32.EXE
•SQLSRV40.EXE
각각 다른 PHP 버 전 지원
•Version 4.0 supports PHP 7.0+
•Version 3.2 supports PHP 5.6, 5.5, and 5.4
•Version 3.1 supports PHP 5.5 and 5.4
•Version 3.0 supports PHP 5.4.
PHP 5.2 가 SQLSRV 20.EXE 를 다운로드 하려 면 이 파일 은 현재 인터넷 에서 도 쉽게 찾 을 수 있 습 니 다.
(5.2 이렇게 오래된 버 전 은 이미 도태 되 었 지만 어떤 환경 을 고려 하여 사용 해 야 한다)
php_pdo_sqlsrv_52_ts_vc6.dll
php_sqlsrv_52_ts_vc6.dll

1.제 손 에는 PHP 5.6.11 win 32 ts 가 있 습 니 다.
php_sqlsrv_56_ts.dll
php_pdo_sqlsrv_56_ts.dll
이 두 파일 은 php\ext 디 렉 터 리 로 복사 합 니 다.
2.php.ini 에 다음 두 마디 를 더 합 니 다.
extension=C:\PHP5\ext\php_sqlsrv_56_ts.dll
extension=C:\PHP5\ext\php_pdo_sqlsrv_56_ts.dll
3.IIS 나 아파 치 를 다시 시작 하고,
4.phopinfo 를 통 해 다음 모듈 을 볼 수 있 습 니 다.우리 의 PHP 는 이때 SQL Server 2008 R2 에 접근 할 수 있 을 것 입 니 다.


5.작은 프로그램 을 써 서 검증 합 니 다.

<?php
try { 
$dbName = "sqlsrv:Server=127.0.0.1\sql2008r2;Database=master"; 
$dbUser = "sa"; 
$dbPassword = "yoooko"; 
$db = new PDO($dbName, $dbUser, $dbPassword); 
if ($db) 
{ 
echo "database connect succeed.<br />"; 
}
}
catch (PDOException $e)
{ 
$content = iconv("UTF-8","gbk",$e->getMessage()); 
echo $content . "<br />";
}
//echo "Hello PDO to MS SqlSrv!";
?>
다음 알림 이 나타 나 면:

이 가능 하 다,~할 수 있다,...® ODBC Driver 11 for SQL Server® - Windows
다운로드 주소:https://www.microsoft.com/zh-cn/download/details.aspx?id=36434

정확 하 다 면 OK 일 것 이다.
PS.새로운 모듈 은 PDO 방식 으로 SQL Server 2008 R2 를 방문 하기 때문에 이 컴퓨터 가 방문 하면 ip 주소 와 sa 계 정 을 통 해 직접 방문 할 수 있 습 니 다.
phop 과 sql 2008 r2 가 서로 다른 컴퓨터 에 있 으 면 TCP 포트 1433 을 설정 하여 방문 해 야 합 니 다.다음 두 번 째 그림 을 보십시오.동적 포트 를 0 으로 바 꾸 고 포트 를 14333 으로 설정 하 십시오.만약 에 SQL 2000 이 1433 을 차지 했다 면 방문 주소 뒤에'xxxx 포트 번호'를 추가 하 십시오.
sqlsrv:Server=192.168.1.xxx\sql2008r2,14333;Database=master


위 에서 말 한 것 은 편집장 이 소개 한 PHP 5.6.11 SQL Server 2008 R2 를 방문 한 몇 가지 상황 에 대한 상세 한 설명 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 저 에 게 메 시 지 를 남 겨 주세요.편집장 은 신속하게 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!

좋은 웹페이지 즐겨찾기