2017-06-06 85 views
0

在mysql中,我有一個帶有BLOB數據類型的db列。mysql BLOB在php中操作

BLOB數據看起來是這樣的:

{\"Name\":\"Mike Smith\",\"Number\":\"1\"} 

[{\"Name\":\"Mike Smith\"},{\"Name\":\"Jon Doe\",\"Spaces\":\"1\"},{\"Name\":\"My Space(s)\"},{\"Name\":\"Rear\"}] 

我試圖發現在PHP中的內容並保存字符串作爲變量,例如:

{\"Name\":\"Mike Smith\",\"Number\":\"1\"} 
BECOMES -> Mike Smith(1) 

And ...

[{\"Name\":\"Mike Smith\"},{\"Name\":\"Jon Doe\",\"Number\":\"1\"},{\"Name\":\"My Space(s)\"},{\"Name\":\"Rear\"}] 
BECOMES --> Mike Smith, Jon Doe(1), My Space(s), Rear 

我不熟悉BLOB數據類型,想從社區獲得一些幫助。我將如何操作BLOB數據到上面?

任何建議將不勝感激。

+1

看起來像JSON數據。爲什麼不用各種[JSON函數](http://php.net/manual/en/book.json.php)解析它? – tadman

+0

你可能是對的。我會試一試。謝謝! –

回答

1
<?php 

$data = '[{\"Name\":\"Mike Smith\"},{\"Name\":\"Jon Doe\",\"Number\":\"1\"}, 
{\"Name\":\"My Space(s)\"},{\"Name\":\"Rear\"}]'; 

$data = json_decode(stripslashes($data)) ; 

$string = ''; 
for ($i=0; $i <sizeof($data) ; $i++) { 

$d = $data[$i]; 

if(isset($d->Number)){ 
    $number = '('.$d->Number.')'; 
} 
else{ 
    $number = ''; 
} 

$string .= ($d->Name).$number.', '; 

} 


echo $string;