-1
這是數組的第一部分(從JSON提要派生而來)。重複塊位於[Attendee]內部,並從[0]開始。對複雜PHP數組進行排序
Array
(
[Code] => 1
[Message] => Successfully retrieved data
[Result] => Array
(
[Attendee] => Array
(
[0] => Array
(
[CountryCode] => 44
[DemographicData] => Array
(
)
[Email] => [email protected]
[FreeTextDataCategories] => Array
(
[AttendeeFreeTextDataCategory] => Array
(
[0] => Array
(
[DataCategoryId] => 165497
[Value] => Firstname
)
[1] => Array
(
[DataCategoryId] => 165498
[Value] => Lastname
)
[2] => Array
(
[DataCategoryId] => 165500
[Value] => Job Title
)
[3] => Array
(
[DataCategoryId] => 165504
[Value] => Array
(
)
)
)
)
[GuestOfAttendeeId] => Array
(
)
[Id] => 3344468
[Name] => Firstname Lastname
[Password] => Array
(
)
[PhoneNumber] => 123456789
[RegisteredVia] => Email
[RegistrationDate] => 2017-06-30T11:30:44.313
[SessionId] => 111222333
[Status] => Registered
[StatusDate] => 2017-06-30T11:30:44.313
)
)
)
我要排序的與會者[N]由姓氏,值我可以很容易地附和,但我不明白如何通過它來進行排序。 以下是我回音吧:
foreach ($result_array['Result']['Attendee'] as $row) {
echo "<a href=\"mailto:" . $row["Email"] . "\">" . $row["FreeTextDataCategories"]["AttendeeFreeTextDataCategory"][0]["Value"] . " " . $row["FreeTextDataCategories"]["AttendeeFreeTextDataCategory"][1]["Value"]. " </a>"; }
...我已經尋找存在的問題,並試圖以我的情況下適應這樣的解決方案,但都沒有成功: Sorting Complex Arrays by Name - Sort multidimensional array alphabetically - PHP Array Complex Sort
對不起,如果我不清楚,但實際上有三個名稱相關的字段在數組中。一個名爲['Name'](您使用的名稱)以及兩個在數據中更深處的「隱藏」,Firstname和Lastname是分開的。它們分別與[DataCategoryId] 165497和165498耦合。我試圖在各種嘗試中提及['165498'],但仍然沒有運氣。 – LoDef
看我的編輯。在這種情況下,您可以使用'array_search'和'array_column'來查找要比較的值。 '['165498']'不起作用,因爲ID不是一個鍵,而是一個值。 –
謝謝Björn! – LoDef