php – Laravel PDO设置?
发布时间:2020-12-14 19:46:00 所属栏目:大数据 来源:网络整理
导读:我想从我的数据库返回INT作为整数.目前,所有值都以字符串形式加载.数据库是MSSQL 2012,我使用PDO驱动程序(适用于v5.6). 试图在这里设置属性(如图所示here on fideloper.com,但我不知道是否仍然可以): 'sqlsrv' = [ 'driver' = 'sqlsrv','charset' = 'utf8',
我想从我的数据库返回INT作为整数.目前,所有值都以字符串形式加载.数据库是MSSQL 2012,我使用PDO驱动程序(适用于v5.6).
试图在这里设置属性(如图所示here on fideloper.com,但我不知道是否仍然可以): 'sqlsrv' => [ 'driver' => 'sqlsrv','charset' => 'utf8','prefix' => '',...... 'options' => array( PDO::ATTR_STRINGIFY_FETCHES => false,PDO::ATTR_EMULATE_PREPARES => false,),], 但总是得到一个错误: SQLSTATE[IMSSP]: The given attribute is only supported on the PDOStatement object. 如何设置PDO驱动程序的任何设置以将INT作为整数而不是字符串返回. 这仍然无效: $pdo = DB::connection()->getPdo(); $pdo->setAttribute(PDO::ATTR_STRINGIFY_FETCHES,false); $pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES,false); .. do ORM Query 带来同样的错误. 也许有人可以帮助我?
我相信这个问题与使用的PDO驱动程序有关(那是用PHP安装的,而不是laravel配置).
不是你想要的,但可以解决你的问题.由于laravel 5在eloquent上是一个强制转换功能,因此您的列会自动转换为预定义类型.见http://laravel.com/docs/5.0/eloquent#attribute-casting // Eloquent Model protected $casts = [ 'int_column' => 'int',]; 当从数据库中检索模型时,int_column将自动转换为int (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |