0

get('table_name')->result(); を使用する codeigniter アクティブ レコード クエリがあります。

出力は以下のとおりです。私がやりたいのは、「venue_opening_hours」文字列をシリアル化解除 (base_64_decode) し、データ構造内のその文字列を、シリアル化されていない & base64_decoded データの結果に置き換えることです。これを正常に行うためにarray_walkできることは知っていますが、配列内のオブジェクトとしてその特定のデータビットにアクセスする方法がわかりません...

ありがとう!

array(2) {
  [0]=>
  object(stdClass)#142 (4) {
    ["entry_id"]=>
    string(2) "15"
    ["google-id"]=>
    string(40) "552e7c08d3b86c14d130ebe43a0ba421d03a60ae"
    ["venue_opening_hours"]=>
    string(148) "YToxOntzOjEzOiJvcGVuaW5nX2hvdXJzIjthOjE6e3M6NzoicGVyaW9kcyI7YToxOntzOjQ6Im9wZW4iO2E6Mjp7czozOiJkYXkiO3M6MToiNSI7czo0OiJ0aW1lIjtzOjQ6IjIzMTUiO319fX0="
    ["title"]=>
    string(18) "Place Name"
  }
  [1]=>
  object(stdClass)#143 (4) {
    ["entry_id"]=>
    string(2) "18"
    ["google-id"]=>
    string(40) "71d9c8e1f64f330637c96d30a0ae15533836a85e"
    ["venue_opening_hours"]=>
    string(972) "YToxOntzOjEzOiJvcGVuaW5nX2hvdXJzIjthOjE6e3M6NzoicGVyaW9kcyI7YToxMDp7aTowO2E6MTp7czo1OiJjbG9zZSI7YToyOntzOjM6ImRheSI7czoxOiIxIjtzOjQ6InRpbWUiO3M6NDoiMjMzMCI7fX1pOjE7YToxOntzOjQ6Im9wZW4iO2E6Mjp7czozOiJkYXkiO3M6MToiMSI7czo0OiJ0aW1lIjtzOjQ6IjIzMTUiO319aToyO2E6MTp7czo1OiJjbG9zZSI7YToyOntzOjM6ImRheSI7czoxOiIxIjtzOjQ6InRpbWUiO3M6NDoiMjMxNSI7fX1pOjM7YToxOntzOjQ6Im9wZW4iO2E6Mjp7czozOiJkYXkiO3M6MToiMSI7czo0OiJ0aW1lIjtzOjQ6IjIzMzAiO319aTo0O2E6MTp7czo1OiJjbG9zZSI7YToyOntzOjM6ImRheSI7czoxOiIyIjtzOjQ6InRpbWUiO3M6NDoiMjMxNSI7fX1pOjU7YToxOntzOjQ6Im9wZW4iO2E6Mjp7czozOiJkYXkiO3M6MToiMiI7czo0OiJ0aW1lIjtzOjQ6IjIzMzAiO319aTo2O2E6MTp7czo1OiJjbG9zZSI7YToyOntzOjM6ImRheSI7czoxOiI0IjtzOjQ6InRpbWUiO3M6NDoiMjMzMCI7fX1pOjc7YToxOntzOjQ6Im9wZW4iO2E6Mjp7czozOiJkYXkiO3M6MToiNCI7czo0OiJ0aW1lIjtzOjQ6IjIzMzAiO319aTo4O2E6MTp7czo1OiJjbG9zZSI7YToyOntzOjM6ImRheSI7czoxOiI1IjtzOjQ6InRpbWUiO3M6NDoiMjM0NSI7fX1pOjk7YToxOntzOjQ6Im9wZW4iO2E6Mjp7czozOiJkYXkiO3M6MToiNSI7czo0OiJ0aW1lIjtzOjQ6IjIzNDUiO319fX19"
    ["title"]=>
    string(24) "Other place name"
  }
}
4

1 に答える 1

1

次を使用してアクセスします。

$array[0]->venue_opening_hours

forループで...

//foreach ($array as &$arrayItem)
//{
  foreach ($arrayItem as &$object)
  {
       // extract and convert it...
       //$openinghours =  unserialize(base64_decode($object->venue_opening_hours));
       // Update it...
       $object->venue_opening_hours = $unserialize(base64_decode($object->venue_opening_hours));
  }
//}

&$object参照であるため、割り当てによって元の結果セットの値が変更されます...

また、配列をループするのも忘れていました...と思います!そのため、外側のループを追加しました:)

于 2012-10-15T10:53:51.333 に答える