php柱形图 数据sql,ThinkPHP 5.1 读取数据库中的图片
如果一個圖片直接存在數據庫中,可以用以下方法讀出來。
環境
ThinkPHP 5.1 ,sqlsrv,pdo_sqlsrv
代碼//pdo 方式
$pdo=new PDO('sqlsrv:Server=localhost;Database=SD31022_Sample', 'sa', 'Sql2008');
$stmt=$pdo->prepare('select picture from crm_affixinfo where id=115');
$stmt->setAttribute(PDO::SQLSRV_ATTR_ENCODING, PDO::SQLSRV_ENCODING_BINARY); //指定二進制方式
$stmt->execute();
$row=$stmt->fetchObject(); //測試表明,直接fetch不成功
$image=$row->picture;
return response()->data($image)->header('Content-Type', 'image/png');
// 非pdo方式
$conn=\sqlsrv_connect('(local)', ['Database'=>'SD31022_Sample']);
$tsql='select picture from crm_affixinfo where id=115';
$stmt=\sqlsrv_query($conn, $tsql);
\sqlsrv_fetch($stmt);
$image=\sqlsrv_get_field($stmt, 0, SQLSRV_PHPTYPE_STREAM(SQLSRV_ENC_BINARY));
return json(\fpassthru($image))->header('Content-Type', 'image/png');
// DB 方式
$data=Db::table('crm_affixinfo')->where('id', 115)->find();
return response()->data(\hex2bin($data['picture']))->header('Content-Type', 'image/jpg'); //數據庫中以十六進制存的,轉成二進制就可以了
// 模型方式
$goods=GoodsModel::get(1);
$image=$goods->img;
return response()->data(\hex2bin($image))->header('Content-Type', 'image/jpg');
總結
以上是生活随笔為你收集整理的php柱形图 数据sql,ThinkPHP 5.1 读取数据库中的图片的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机文档调换顺序,word文档页面顺序
- 下一篇: 讲php fpm的书,细说PHP-fpm