0

多次元配列を保存するデータベースから配列値を取得しています。追加したい

|

array..iの2つのメンバー値の間で、基本的なimplode関数を試しました。

私は以下にループの言及があります

$sql = "SELECT `categories` FROM `jos_js_res_record` WHERE `categories` LIKE '%Autumn Market Session%' OR `categories` LIKE '%Farmer Market Profiles%' OR `categories` LIKE '%Spring Market Session%' OR `categories` LIKE '%Summer Market Session%' OR `categories` LIKE '%Winter Market Session%' ORDER BY `user_id`";

$db->setQuery( $sql );

$unserial = $db->loadObjectList();

foreach ($unserial as $dataElement) {
  $categories = unserialize($dataElement->categories);

if (is_array($categories)) {

foreach ($categories as $unserKey => $unserailData) { 

print $unserailData;
    }

}

echo '<br />';

}

以下のコード行をループごとに2番目に試しましたが、エラーが表示されます

$comma_separated = implode(",", $unserailData);

2番目の配列$unserailDataの値をどのように内包することができますか?

$unserailDataのデータは次のようになります

サマーマーケットセッション

サマーマーケットセッション

サマーマーケットセッション秋マーケットセッション

サマーマーケットセッション秋マーケットセッション

4

2 に答える 2

0

私は以下のトリックを作成しましたが、@Robbie に言及されているコードはよりクリーンであるため、私のコードを彼のコードに置き換えます。

私はこのトリックを作りました

foreach ($unserial as $dataElement) {
  $categories = unserialize($dataElement->categories);
if (is_array($categories))
{ 
foreach ($categories as $unserKey => $unserailData) {
$arr2[] = $unserailData;
}
$imploded = implode(" | ", $arr2);
print_r($imploded);
$arr2 = array();
}

else{
echo "Category not stored correctly";
}
echo '<br />';
}
于 2012-06-21T04:39:02.773 に答える
0

リクエストを正しく読んでいれば、次のように動作するはずです。

$sql = "SELECT `categories` FROM `jos_js_res_record` WHERE `categories` LIKE '%Autumn Market Session%' OR `categories` LIKE '%Farmer Market Profiles%' OR `categories` LIKE '%Spring Market Session%' OR `categories` LIKE '%Summer Market Session%' OR `categories` LIKE '%Winter Market Session%' ORDER BY `user_id`"; 

$db->setQuery( $sql ); 

$unserial = $db->loadObjectList(); 

foreach ($unserial as $dataElement) { 
    $categories = unserialize($dataElement->categories); 
    if (is_array($categories)) {
         echo implode('|', $categories);
    } elseif (is_string($categories)) {
         echo $categories;
    }  
    echo '<br />'; 
}
于 2012-06-21T03:57:43.103 に答える