2016-07-01 7 views
0

Ich habe dieses mehrdimensionales Array:Multidimensional deserialisiert Array - Extrahieren von Daten - extrahierten Daten zählen und sortieren, AZ

Array ( 
[0] => a:7:{s:21:"mage_form_post_status";s:5:"draft";s:19:"mage_form_post_type";s:4:"post";s:25:"mage_form_post_permission";s:6:"public";s:21:"mage_form_post_author";s:1:"1";s:23:"mage_form_post_redirect";s:1:"0";s:19:"mage_form_post_edit";b:0;} 
[1] => a:4:{s:14:"mage_your_name";s:14:"George Jackson";s:15:"mage_your_email";s:24:"[email protected]";s:13:"mage_who_name";s:8:"Gym Goer";s:10:"mage_video";s:0:"";} 
[2] => a:7:{s:21:"mage_form_post_status";s:5:"draft";s:19:"mage_form_post_type";s:3:"gym";s:25:"mage_form_post_permission";s:6:"public";s:21:"mage_form_post_author";s:1:"1";s:23:"mage_form_post_redirect";s:2:"88";s:19:"mage_form_post_edit";b:0;} 
[3] => a:2:{s:15:"mage_tags_input";s:0:"";s:14:"mage_your_name";s:5:"Denis";} 
[4] => a:1:{s:14:"mage_your_name";s:5:"Denis";} 
[5] => a:2:{s:13:"mage_gym_name";s:12:"Fanna - test";s:14:"mage_your_name";s:4:"John";} 
[7] => a:2:{s:13:"mage_gym_name";s:11:"Boss - test";s:14:"mage_your_name";s:4:"Rudy";} 
[8] => a:6:{s:21:"mage_form_post_status";s:5:"draft";s:19:"mage_form_post_type";s:4:"post";s:25:"mage_form_post_permission";s:11:"contributor";s:21:"mage_form_post_author";i:0;s:20:"mage_form_post_email";s:0:"";s:23:"mage_form_post_redirect";i:0;} 
[9] => a:2:{s:13:"mage_gym_name";s:11:"Batt - test";s:14:"mage_your_name";s:3:"Ann";} 
[10] => a:2:{s:13:"mage_gym_name";s:11:"Boss - test";s:14:"mage_your_name";s:6:"Freddy";} 
) 

Ich möchte wie dies in AZ um Ergebnis anzuzeigen:

Batt - Test (1)

Boss - Test (2)

Fanna - Test (1)

Kannst du mir bitte helfen?

+0

Also, was Sie haben versucht zu tun. So ** ist kein kostenloser Codierungsdienst ** – RiggsFolly

+0

'array_map ('unserialize', $ arr)' und arbeite wie immer – splash58

Antwort

0

Die Lösung array_map, unserialize, array_column (verfügbar seit PHP 5.5) verwenden, array_count_values und ksort Funktionen:

// $serialized_data is your initial array 

$unserialized = array_map('unserialize', $serialized_data); 
$gym_names = array_column($unserialized, 'mage_gym_name'); // getting all 'mage_gym_name' entries 
$counts = array_count_values($gym_names); 
ksort($counts); // sorting by keys 

print_r($counts); 

Die Ausgabe der folgenden gleich sein wird:

Array 
(
    [Batt - test] => 1 
    [Boss - test] => 2 
    .... 
) 
+0

Ich triyng, um deinen Code zu implementieren und dieser Teil des Codes bricht den Rest des Codes: array_column ($ unserialisiert, 'mage_gym_name'); –

+0

Ich habe geschrieben * verfügbar seit PHP 5.5 * - überprüfen Sie Ihre PHP-Version – RomanPerekhrest

+0

Sie haben absolut Recht, mein Hosting verwendet PHP 5.4.45 Version –