簡體   English   中英

如何從具有多個值的字段中提取數據?

[英]How to Extract Data from a field with multiple values?

IP.Nexus將自定義字段放到一個表中,所有表都混成一排,並介紹了如何提取正確的數據。

基本上我的自定義字段行看起來像這樣:

a:2:{i:2;s:4:"Test";i:3;s:10:"Accounting";}

我該如何選擇要拉的項目,因為我想只放一項而不是整行,是用定界符還是字符串分隔符,因為我是mySQL的新手

因為我只想回顯廣告,反之亦然。

提前致謝

這是一個使用serialize()函數的序列化數組,因此您可以使用unserialize($YourString);獲取其內容unserialize($YourString);

但是,我看到你的字符串被破壞的反序列化,因為s:4:s:4:"advertising"說,經過s:4: 4個字符長的字符串,預計advertising是沒有的。

數據庫中的數據采用序列化(json)格式。您可以使用unserialize將其轉換為簡單數組。 例如;如果$mystr是您的字符串,請輸入

$mystring=unserialize($mystring)

您將獲得此字符串的普通數組,您可以執行

foreach($mystring as $str){
$ads[]=$str['advertising'];
}

然后生成的數組$ads將是您喜歡的簡單數組形式的廣告

由於這看起來像是JSon,因此您可以使用PHP JSon模塊來解析MySQL中的每一行。

<?php

(...)
while (...) {
    $obj = json_decode($row);
    // do something with $obj
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM