如何从具有正确字段类型的数据库中获取值?
我正在使用 PDO Sqlsrv 从数据库获取数据,并且我总是以字符串形式接收数据,如下所示:customer_id : "1"我的customer_id字段类型应该是整数,customer_id : 1但phone_number字段类型是 varchar 它返回正确的字符串类型,例如:phone_number : "12345678"
编辑:
我正在使用 PHP 5.5。我已经尝试过这个。
$this->dbh->setAttribute(PDO::SQLSRV_ATTR_FETCHES_NUMERIC_TYPE, true);
Run Code Online (Sandbox Code Playgroud)
我收到了这个错误Fatal error: Undefined class constant 'SQLSRV_ATTR_FETCHES_NUMERIC_TYPE'
我的 PDO 代码:
$this->dbh = new PDO('sqlsrv:Server=' . $_ENV['DB_HOST'] . ';Database=' . $_ENV['DB_NAME'], $_ENV['DB_USER'], $_ENV['DB_PASS']);
$this->dbh->exec('set names ' . $_ENV['DB_CHAR_SET']);
$this->dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$this->dbh->setAttribute(PDO::ATTR_STRINGIFY_FETCHES, false);
$this->dbh->setAttribute(PDO::SQLSRV_ATTR_FETCHES_NUMERIC_TYPE, true); // Got Error
$this->dbh->setAttribute(PDO::SQLSRV_ATTR_ENCODING, PDO::SQLSRV_ENCODING_UTF8);
Run Code Online (Sandbox Code Playgroud) 如何Tags将此值显示为此示例中的帖子标记?
产品表
+----+--------+--------------------------+
| ID | Name | Tags |
+----+--------+--------------------------+
| 1 | Shirt | Shirt,Clothes,Blue-Shirt |
| 2 | Shoes | Shoes,Red-Shoes |
| 3 | Jacket | Jacket,Clothes |
+----+--------+--------------------------+
Run Code Online (Sandbox Code Playgroud)
码
<?php
$result= mysql_query("SELECT * FROM product") or die (mysql_error());
while ($rows = mysql_fetch_array ($result))
{
?>
<div class="post">
Product name : <?php echo $rows['name']; ?>
<ul class="tags">
<li>Tagged :</li>
<li><a href="#"><?php echo $rows['tags']; ?></a></li>
</ul>
</div>
<?php } ?>
Run Code Online (Sandbox Code Playgroud)
我的代码给出了这个结果.