Zählen Sie das Auftreten eines Wertes in einer Spalte eines Arrays von Objekt-Arrays
Weiß jemand, wie man zählt die vorkommen von "Foto" in diesem array:
Array (
[0] => stdClass Object ( [type] => photo [id] => 1404781893036 [created_time] => 2012-03-02T07:58:23+0000 )
[1] => stdClass Object ( [type] => photo [id] => 14047818930362 [created_time] => 2012-03-01T14:58:53+0000 )
[2] => stdClass Object ( [type] => status [id] => 1404781893036 [created_time] => 2012-03-01T09:49:40+0000 )
[3] => stdClass Object ( [type] => status [id] => 14047818930362 [created_time] => 2012-03-01T09:36:04+0000 )
[4] => stdClass Object ( [type] => photo [id] => 14047818930362 [created_time] => 2012-02-28T07:03:25+0000 )
[5] => stdClass Object ( [type] => photo [id] => 1404781893036 [created_time] => 2012-02-27T09:15:34+0000 )
[6] => stdClass Object ( [type] => photo [id] => 14047818930362 [created_time] => 2012-02-27T07:32:13+0000 )
[7] => stdClass Object ( [type] => status [id] => 1404781893036 [created_time] => 2012-02-25T09:36:57+0000 )
[8] => stdClass Object ( [type] => photo [id] => 1404781893036 [created_time] => 2012-02-23T08:46:43+0000 )
[9] => stdClass Object ( [type] => status [id] => 1404781893036 [created_time] => 2012-02-22T21:04:30+0000 )
[10] => stdClass Object ( [type] => status [id] => 1404781893036 [created_time] => 2012-02-21T20:38:27+0000 )
[11] => stdClass Object ( [type] => photo [id] => 1404781893036 [created_time] => 2012-02-21T07:22:44+0000 )
[12] => stdClass Object ( [type] => status [id] => 14047818930362 [created_time] => 2012-02-20T08:32:46+0000 )
[13] => stdClass Object ( [type] => status [id] => 1404781893036 [created_time] => 2012-02-17T15:00:11+0000 ) )
InformationsquelleAutor der Frage G.W | 2012-03-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
InformationsquelleAutor der Antwort Dor Shemer
Zu zählen, matching, bei der ein string in mehrdimensionales array müssen Sie Durchlaufen Sie jedes array-element und passen Sie die saite und erhöht die Anzahl. Ähnlich @Dor vorgeschlagen hat
Wenn Sie wollen, erreichen, gleichen in eindimensionalen array, dann ist das ziemlich einfach. Sie können array_count_values PHP die array-Funktion wie unten beschrieben.
Dem obigen Beispiel wird ausgegeben:
InformationsquelleAutor der Antwort Roopendra
Möchte ich bestätigen, dass die Methode von Dor Semer ist (IMO) die meisten direkten, sauber, lesbar und zuverlässige Methode. Ich will einfach nur ein paar alternativen für diejenigen, die lieber die funktionale Programmierung ...
array_reduce()
ist eine enge zweite für mich. Schließlich, ich wollen zu lokalisieren eine kleine gotcha für Methoden, mit denenarray_count_values()
-- Lesen Sie bitte weiter...Batterie von Methoden: (Demo)
Eingang/Ausgang mit OP-sample-Daten (keine Probleme):
Eingang/Ausgang Verwendung der Daten
photo
Werte (Probleme mit 2.array_count_values()
- Methode):array_count_values()
nicht stören, Sie zu erzeugen Elemente mit ein0
zählen.InformationsquelleAutor der Antwort mickmackusa
Versuchen mit:
InformationsquelleAutor der Antwort hsz