我有一张名为listing_fees
的桌子
我想通过id
的12
获取数据
我想得到的数据是BLOB
,名为[BLOB - 205B]
在BLOB
文件中是一个这样的数组:
a:7:{s:2:"id";s:1:"1";s:5:"label";s:8:"For Sale";s:6:"amount";s:4:"0.00";s:4:"days";s:1:"7";s:6:"images";s:1:"0";s:10:"categories";a:2:{s:3:"all";i:0;s:10:"categories";a:1:{i:0;i:30;}}s:10:"extra_data";N;}
我对这段代码不了解。
我想用PHP在html的前端显示它
我将展示它什么?
SQL查询或其他。
该数据在PHP Serialized format,您可以使用unserialize解码它
例
$data = 'a:7:{s:2:"id";s:1:"1";s:5:"label";s:8:"For Sale";s:6:"amount";s:4:"0.00";s:4:"days";s:1:"7";s:6:"images";s:1:"0";s:10:"categories";a:2:{s:3:"all";i:0;s:10:"categories";a:1:{i:0;i:30;}}s:10:"extra_data";N;}';
$data = unserialize($data);
echo "<pre>" ;
foreach ( $data as $key => $value ) {
if ($key == 'categories') {
echo $key, " = ", $value['categories']['0'], PHP_EOL;
} else {
echo $key, " = ", $value , PHP_EOL;
}
}
产量
id = 1
label = For Sale
amount = 0.00
days = 7
images = 0
categories = 30
extra_data =
BLOB
列中的数据似乎是序列化数据,而不是文件。因此,你不想只是“输出”它到页面 - 你想要反序列化它(通过PHP的unserialize()
方法),然后处理显示,但是应该显示它。获取您在问题中显示的确切数据并使用unserialize()
传递给我一个包含以下内容的数组:
Array
(
[id] => 1
[label] => For Sale
[amount] => 0.00
[days] => 7
[images] => 0
[categories] => Array
(
[all] => 0
[categories] => Array
(
[0] => 30
)
)
[extra_data] =>
)
查询数据库和检索列的简单设置是:
$mysqli = new mysqli('localhost', 'username', 'password', 'db');
$result = $mysqli->query('SELECT column_name FROM listing_fees WHERE id = 12');
$data = $result->fetch_assoc();
$result->close();
要使用$data
数组中的数据,您可以执行以下操作:
$blob = unserialize($data['column_name']);
现在,您可以显示所需的数据,使用$blob['label']
或$blob['days']
访问每个值。