Я использую PHP для обработки вызовов API Facebook GRAPH.Мне нужен лучший способ разобрать вывод.Вот несколько примеров того, что я имею в виду.Ниже приведены некоторые результаты, касающиеся образования.Так что теперь я должен написать около пятнадцати различных операторов elseif для разных возможностей.Если задано первое образование, а тип - «колледж», сделайте это, если не задано первое образование, если задано первое образование, начальная школа и т.д.
[education] => Array
(
[0] => Array
(
[school] => Array
(
[id] => 111894272160018
[name] => Spanish River Community High School
)
[year] => Array
(
[id] => 137616982934053
[name] => 2006
)
[type] => High School
)
[1] => Array
(
[school] => Array
(
[id] => 35078114590
[name] => University of Central Florida
)
[year] => Array
(
[id] => 118118634930920
[name] => 2012
)
[concentration] => Array
(
[0] => Array
(
[id] => 104076956295773
[name] => Computer Science
)
[1] => Array
(
[id] => 107870585903083
[name] => Finance
)
)
[type] => College
)
)
Другой пример - доступ к данным о друзьях пользователя.Он возвращается в массиве, как в коде выше.Я хочу написать какой-нибудь код, например, если тип обучения друзей пользователя - колледж, а основной - это, то сделай это.Но я, очевидно, не буду писать 215 выражений для обработки каждого outset [0], [1], [2] для каждого пользователя.Как мне справиться с этим?Как я могу запустить выражение на всех из них одновременно?Данные о друзьях возвращаются ниже:
Array
(
[0] => Array
(
[name] => BLANK
[education] => Array
(
[0] => Array
(
[school] => Array
(
[id] => 114760235206446
[name] => Abraham Lincoln High School
)
[type] => High School
)
[1] => Array
(
[school] => Array
(
[id] => 103127603061486
[name] => Columbia University
)
[year] => Array
(
[id] => 140617569303679
[name] => 2007
)
[concentration] => Array
(
[0] => Array
(
[id] => 187442601290749
[name] => Industrial Engineering & Operations Research
)
)
[type] => College
)
)
[work] => Array
(
)
)
[1] => Array
(
[name] => BLANK
[education] =>
[work] =>
)
[2] => Array
(
[name] => BLANK
[education] => Array
(
[0] => Array
(
[school] => Array
(
[id] => 108087985890571
[name] => St. Andrew's School
)
[year] => Array
(
[id] => 138383069535219
[name] => 2005
)
[type] => High School
)
[1] => Array
(
[school] => Array
(
[id] => 108087985890571
[name] => St. Andrew's School
)
[year] => Array
(
[id] => 138383069535219
[name] => 2005
)
[type] => High School
)
[2] => Array
(
[school] => Array
(
[id] => 20697868961
[name] => Boston University
)
[concentration] => Array
(
[0] => Array
(
[id] => 108654845832522
[name] => Business Administration
)
)
[type] => College
)
[3] => Array
(
[school] => Array
(
[id] => 20697868961
[name] => Boston University
)
[concentration] => Array
(
[0] => Array
(
[id] => 108654845832522
[name] => Business Administration
)
)
[type] => College
)
[4] => Array
(
[school] => Array
(
[id] => 108289315859633
[name] => University of Miami
)
[year] => Array
(
[id] => 138879996141011
[name] => 2013
)
[type] => Graduate School
)
[5] => Array
(
[school] => Array
(
[id] => 108289315859633
[name] => University of Miami
)
[year] => Array
(
[id] => 138879996141011
[name] => 2013
)
[type] => Graduate School
)
)
[work] => Array
(
)
Пример:
function majorRecommender () {
if ($this->majorid =='104076956295773' && $this->grad>='2011' || $this->minor='Computer Science' && $this->grad>='2011') {
echo "<p>Majoring in Computer Science is a definite plus. You're on the right track!<p>";
} elseif ($this->majorid='104076956295773' && $this->grad<='2011') {
echo "<p>You majored in Computer Science in college. This should certainly help you in the job market.</p>";
} elseif ($this->majorid!='104076956295773' && $this->grad<='2011') {
echo "<p>Have you considered going back to school?</p>";
} elseif ($this->majorid!='104076956295773' && $this->grad>='2013') {
echo "<p>You still have time until you graduate. You should consider changing your major to Computer Science</p>";
} elseif ($this->majorid!='104076956295773' && $this->grad<='2012') {
echo "<p>You should consider minoring in CS.</p>";
} elseif ($this->majorid!='104076956295773' && $this->majors!='Computer Science') {
echo "<p>You should consider majoring in Computer Science, or at the very least minoring in it.</p>";
}
}
И экземпляр объекта:
$collegeid = isset($user_profile['education'][1]['school']['id']) ? $user_profile['education'][1]['school']['id'] : null ;
$college = isset($user_profile['education'][1]['school']['name']) ? $user_profile['education'][1]['school']['name'] : null ;
$majorid = isset($user_profile['education'][1]['concentration'][0]['id']) ? $user_profile['education'][1]['concentration'][0]['id'] : null ;
$major = isset($user_profile['education'][1]['concentration'][0]['name']) ? $user_profile['education'][1]['concentration'][0]['name'] : null ;
$majors = isset($user_profile['education'][0]['concentration'][0]['name']) ? $user_profile['education'][0]['concentration'][0]['name'] : null ;
$minor = isset($user_profile['education'][0]['concentration'][1]['name']) ? $user_profile['education'][0]['concentration'][1]['name'] : null ;
$minors = isset($user_profile['education'][1]['concentration'][1]['name']) ? $user_profile['education'][1]['concentration'][1]['name'] : null ;
$grad = isset($user_profile['education'][1]['year']['name']) ? $user_profile['education'][1]['year']['name'] : null ;
$grads = isset($user_profile['education'][0]['year']['name']) ? $user_profile['education'][0]['year']['name'] : null ;