各位好
我所使用的drupal是7.12版本,在這邊想請教一下FB API和drupal之間的問題
以下是我的片段程式碼
<?php
$fql = 'SELECT movies, music, books, tv, sports FROM user WHERE uid = ' . $fb_user_id;
$ret_obj = $facebook -> api(array(
'method' => 'fql.query',
'query' => $fql,
));
if ($ret_obj!=NULL)
{
print '
'; print_r($ret_obj); print '
';
}
foreach($ret_obj as $id)
{
print '
'; print_r($id); print '
';
}
?>
======以下是print出來的結果======
Array
(
[0] => Array
(
[movies] => 海角七號, 玩命關頭5, 賽德克巴萊
[music] => FTISLAND, CNBLUE, 楊丞琳 Rainie Yang, 丁噹 Ring, 羅志祥 SHOW
[books] => 有個女孩叫Feeling, 第一次的親密接觸
[tv] => 雨夜花, 我們結婚了, 小資女孩向前衝, 愛上巧克力, 我可能不會愛你, 真愛找麻煩, 醉後決定愛上你
[sports] => Array
(
)
)
)
Array
(
[movies] => 海角七號, 玩命關頭5, 賽德克巴萊
[music] => FTISLAND, CNBLUE, 楊丞琳 Rainie Yang, 丁噹 Ring, 羅志祥 SHOW
[books] => 有個女孩叫Feeling, 第一次的親密接觸
[tv] => 雨夜花, 我們結婚了, 小資女孩向前衝, 愛上巧克力, 我可能不會愛你, 真愛找麻煩, 醉後決定愛上你
[sports] => Array
(
)
)
======以下是我想要的預期結果======
希望針對某個項目(例如:movies)分別把細項印出來
例如print出來的結果如下:
1.海角七號
2.玩命關頭5
3.賽德克巴萊
movies共3項 // count($movies)
1.有個女孩叫Feeling
2.第一次的親密接觸
books共2項 //count($books)
//依此類推
有使用過drupal_map_assoc($ret_obj[0], '_aggregator_items')這方式
不過也只是把這5個項目印出來,並不是印出期望的細項
count($ret_obj)也一定是5,並不是根據項目印出細項的個數
請問有前輩知道要怎麼解決嗎?
請前輩不吝指教,謝謝
Re: facebook api和drupal之間的問題
看上去是 PHP 問題呢...
你 FOREACH 結果都用 explode() 分割...再按你想要的方式印出...
真的很 Drupal API 方式大概長的像這樣:
$data = array(
'movies' => '海角七號, 玩命關頭5, 賽德克巴萊',
'music' => 'FTISLAND, CNBLUE, 楊丞琳 Rainie Yang, 丁噹 Ring, 羅志祥 SHOW',
);
foreach($data as $key => $item) {
$arr['data'] = $key;
$arr['children'] = explode(', ', $item);
$list['items'][] = $arr;
}
$list['type'] = 'ol';
echo theme('item_list', $list);
http://api.drupal.org/api/drupal/includes%21theme.inc/function/theme_ite...
Re: facebook api和drupal之間的問題
您好
依照您的建議後,出現了warning,訊息如下:
Warning:explode() expects parameter 2 to be string, array given 於 fbcf_poi_form_recommendation() (C:\TWAMPd\htdocs\drupal-7.12\sites\all\modules\fbcf_poi\fbcf_poi.module 中的第 421 行)。
這邊的421行是$arr['children'] = explode(', ', $item);
另外,想請教一下,我想單獨印出movies的訊息,並將movies的訊息存進DB內
要怎麼做會比較好呢?
謝謝您播空指導,謝謝