PHP在linux下 连接MSSQL
2022/1/20 19:14:32
本文主要是介绍PHP在linux下 连接MSSQL,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
<?php $serverName = "192.168.2.251,2434"; $connectionInfo = array( "Database"=>"jfdf40", "UID"=>"sa", "PWD"=>"932kj"); $conn = sqlsrv_connect( $serverName, $connectionInfo ); if( $conn === false ) { die( print_r( sqlsrv_errors(), true)); } //$stmt = sqlsrv_query( $conn, 'SET TEXTSIZE 80000' ); $sql = "SELECT msg FROM test"; $stmt = sqlsrv_query( $conn, $sql ); if( $stmt === false) { die( print_r( sqlsrv_errors(), true) ); } while ( sqlsrv_fetch( $stmt)) { $comments = sqlsrv_get_field( $stmt, 0, SQLSRV_PHPTYPE_STREAM(SQLSRV_ENC_BINARY)); //echo get_resource_type ($comments); $contents = ''; while (!feof($comments)) { $contents .= fread($comments, 8192); } $s = (mb_convert_encoding(($contents), 'utf-8', 'gbk')); echo $s . PHP_EOL; echo mb_strlen($s); echo "\n"; }
mssql 一般在我们中国默认排序规则都是 Chinese_PRC_CI_AS
查询用,得到代码页是963=BGK
sELECT DATABASEPROPERTYEX('databasename', 'Collation') SQLCollation; SELECT COLLATIONPROPERTY('Chinese_PRC_CI_AS', 'CodePage')
php在linux 下连接mssql 读取中文会有问题,这里采用流读取的方式以2进制形式读回来。再把gbk转成utf-8就可以了
这篇关于PHP在linux下 连接MSSQL的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-03-29env: php: no such file or directory
- 2024-03-01php foreach break
- 2024-02-26Exception参数 php-icode9专业技术文章分享
- 2023-12-30PHP文件批量上传-icode9专业技术文章分享
- 2023-12-30thinkphp6 withJoin-icode9专业技术文章分享
- 2023-12-27MagicArray:像php一样,让Go业务代码不再卷!
- 2023-11-18centos7编译安装PHP教程。
- 2023-11-18centos7编译安装phpMyAdmin教程。
- 2023-10-13唱衰这么多年,PHP 仍然还是你大爷!
- 2023-07-25PHP8,性能更好,语法更好,类型安全更完善