Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Array durchsuchen

Mitglied: chrigi89

chrigi89 (Level 1) - Jetzt verbinden

09.12.2008, aktualisiert 07.01.2009, 3965 Aufrufe, 3 Kommentare

Hallo

Gibt es von PHP bereits eine solche Funktion:
"Durchsucht ein Array rekursiv nach einem Wert eines bestimmten Schlüssels und liefert wenn gefunden 'true' zurück."

Konkret: Die Funktion soll im Array nach dem Schlüssel "id" suchen und diesen Schlüssel mit einer Zahl vergleichen.

Mein Vorhaben:

Ich hab ein Array

01.
Array 
02.
03.
    [0] => Array 
04.
05.
            [id] => 1 
06.
            [titel] => Home 
07.
            [parent_id] => 0 
08.
            [ebene] => 1 
09.
            [children] => Array 
10.
11.
                    [0] => Array 
12.
13.
                            [id] => 5 
14.
                            [titel] => Home 
15.
                            [parent_id] => 1 
16.
                            [ebene] => 2 
17.
                            [children] => Array 
18.
19.
                                    [0] => Array 
20.
21.
                                            [id] => 14 
22.
                                            [titel] => test1 
23.
                                            [parent_id] => 5 
24.
                                            [ebene] => 3 
25.
                                            [children] => Array 
26.
27.
28.
 
29.
30.
 
31.
                                    [1] => Array 
32.
33.
                                            [id] => 15 
34.
                                            [titel] => test2 
35.
                                            [parent_id] => 5 
36.
                                            [ebene] => 3 
37.
                                            [children] => Array 
38.
39.
40.
 
41.
42.
 
43.
44.
 
45.
46.
 
47.
                    [1] => Array 
48.
49.
                            [id] => 6 
50.
                            [titel] => Fachgeschaeft 
51.
                            [parent_id] => 1 
52.
                            [ebene] => 2 
53.
                            [children] => Array 
54.
55.
                                    [0] => Array 
56.
57.
                                            [id] => 10 
58.
                                            [titel] => Ueber uns 
59.
                                            [parent_id] => 6 
60.
                                            [ebene] => 3 
61.
                                            [children] => Array 
62.
63.
64.
 
65.
66.
 
67.
                                    [1] => Array 
68.
69.
                                            [id] => 11 
70.
                                            [titel] => Wochenhit 
71.
                                            [parent_id] => 6 
72.
                                            [ebene] => 3 
73.
                                            [children] => Array 
74.
75.
                                                    [0] => Array 
76.
77.
                                                            [id] => 18 
78.
                                                            [titel] => Test1 
79.
                                                            [parent_id] => 11 
80.
                                                            [ebene] => 4 
81.
                                                            [children] => Array 
82.
83.
84.
 
85.
86.
 
87.
                                                    [1] => Array 
88.
89.
                                                            [id] => 19 
90.
                                                            [titel] => Test2 
91.
                                                            [parent_id] => 11 
92.
                                                            [ebene] => 4 
93.
                                                            [children] => Array 
94.
95.
96.
 
97.
98.
 
99.
                                                    [2] => Array 
100.
101.
                                                            [id] => 20 
102.
                                                            [titel] => test 
103.
                                                            [parent_id] => 11 
104.
                                                            [ebene] => 4 
105.
                                                            [children] => Array 
106.
107.
                                                                    [0] => Array 
108.
109.
                                                                            [id] => 21 
110.
                                                                            [titel] => test 
111.
                                                                            [parent_id] => 20 
112.
                                                                            [ebene] => 5 
113.
                                                                            [children] => Array 
114.
115.
116.
 
117.
118.
 
119.
120.
 
121.
122.
 
123.
124.
 
125.
126.
 
127.
                                    [2] => Array 
128.
129.
                                            [id] => 12 
130.
                                            [titel] => Produkte 
131.
                                            [parent_id] => 6 
132.
                                            [ebene] => 3 
133.
                                            [children] => Array 
134.
135.
136.
 
137.
138.
 
139.
                                    [3] => Array 
140.
141.
                                            [id] => 13 
142.
                                            [titel] => Partner 
143.
                                            [parent_id] => 6 
144.
                                            [ebene] => 3 
145.
                                            [children] => Array 
146.
147.
148.
 
149.
150.
 
151.
152.
 
153.
154.
 
155.
                    [2] => Array 
156.
157.
                            [id] => 7 
158.
                            [titel] => Software Entwicklung 
159.
                            [parent_id] => 1 
160.
                            [ebene] => 2 
161.
                            [children] => Array 
162.
163.
164.
 
165.
166.
 
167.
                    [3] => Array 
168.
169.
                            [id] => 8 
170.
                            [titel] => Links 
171.
                            [parent_id] => 1 
172.
                            [ebene] => 2 
173.
                            [children] => Array 
174.
175.
176.
 
177.
178.
 
179.
                    [4] => Array 
180.
181.
                            [id] => 9 
182.
                            [titel] => Mitarbeiter 
183.
                            [parent_id] => 1 
184.
                            [ebene] => 2 
185.
                            [children] => Array 
186.
187.
188.
 
189.
190.
 
191.
192.
 
193.
194.
 
195.
    [1] => Array 
196.
197.
            [id] => 2 
198.
            [titel] => Support 
199.
            [parent_id] => 0 
200.
            [ebene] => 1 
201.
            [children] => Array 
202.
203.
                    [0] => Array 
204.
205.
                            [id] => 16 
206.
                            [titel] => Support 
207.
                            [parent_id] => 2 
208.
                            [ebene] => 2 
209.
                            [children] => Array 
210.
211.
212.
 
213.
214.
 
215.
                    [1] => Array 
216.
217.
                            [id] => 17 
218.
                            [titel] => Test 
219.
                            [parent_id] => 2 
220.
                            [ebene] => 2 
221.
                            [children] => Array 
222.
223.
224.
 
225.
226.
 
227.
228.
 
229.
230.
 
231.
    [2] => Array 
232.
233.
            [id] => 3 
234.
            [titel] => Kontakt 
235.
            [parent_id] => 0 
236.
            [ebene] => 1 
237.
            [children] => Array 
238.
239.
240.
 
241.
242.
 
243.
)
Nun erhalte ich von aus dem GET Parameter die ID des aktuell ausgewählten Punktes.
Nun soll der Pfad zum ausgewählten Unterpunkt Fett dargestellt werden.
Meine Überlegung nun: Jedesmal wenn in der Schleife bei der Suche nach "id" true zurück kommt setze ich das Attribut "b".
Mitglied: ITLocke
09.12.2008 um 16:11 Uhr
"array_key_exists — Prüft, ob ein Schlüssel in einem Array existiert"

Näheres siehe:

http://de.php.net/manual/de/function.array-key-exists.php

Ob es das auch rekursiv macht, weiß ich leider nicht.

Gruß Locke
Bitte warten ..
Mitglied: Arano
09.12.2008 um 16:14 Uhr
Nein, sieht nicht so aus !
PHP-Manual - Array Functions
Aber schau dir doch mal "array_walk_recursive()"" an, daraus sollte sich doch was basteln lassen.

~Arano
Bitte warten ..
Mitglied: chrigi89
25.12.2008 um 01:01 Uhr
ich habs geschafft mit

array_walk_recursive($child, 'search_array_output');

besten dank!
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Powershell: Array solange durchsuchen, wie Bedingung erfüllt ist

gelöst Frage von clubmateBatch & Shell2 Kommentare

Hallo Freunde ich stehe vor einen kleinem Denkproblem. Und zwar möchte ich ein Array mit bestimmten Werten (2er Potenzen) ...

Batch & Shell

Leere Array-Werte aus einem Array entfernen

gelöst Frage von ToniHoBatch & Shell3 Kommentare

Hallo zusammen, ich bin dabei ein Powershell-Script zu schreiben, welches diverse Reports generieren kann. Für die Eingabe von SamAccountNames ...

PHP

Array Filtern bei mehreren Werten innerhalb eines Array

gelöst Frage von LorderichPHP3 Kommentare

Hallo zusammen, ich habe folgendes Array: Array ( resource => Array ( 0 => Array ( ID => 3 ...

JavaScript

Javascript Array

gelöst Frage von internet2107JavaScript2 Kommentare

Ich habe folgendes Problem. Ersetze ich die folgenden Zahlen gegen Variablenwerte, bekomme ich nicht das Ergebnis, wie mit festen ...

Neue Wissensbeiträge
Sicherheit

Zero Day-Schwachstelle im Internet Explorer - wird von APT bereits ausgenutzt

Information von kgborn vor 3 StundenSicherheit

Im Kernel des Internet Explorer scheint es eine Zero Day-Lücke zu geben, die von staatlichen Akteuren (APT) im Rahmen ...

Microsoft
Folder Security Viewer-Lizenzen zu gewinnen
Information von kgborn vor 3 StundenMicrosoft

Ich nehme das Thema mal in Absprache mit Frank hier auf, da es für den einen oder anderen Administrator ...

Hardware

Feueralarm killt Festplatten in Rechenzentrum - führt zu größerem Ausfall

Information von kgborn vor 3 StundenHardware5 Kommentare

Noch ein kleiner Beitrag für Administratoren, die in Rechenzentren aktiv sind - so als Fingerzeig. Denn es gibt Szenarien, ...

MikroTik RouterOS

Mikrotik Advisory: Vulnerability exploiting the Winbox port

Information von colinardo vor 3 StundenMikroTik RouterOS

Brand aktuell: Eine Schwachstelle im Winbox-Port bei Mikrotik Routern erlaubt das Auslesen der User-Datenbank der Router. Patch ist aktuell ...

Heiß diskutierte Inhalte
Linux
Linux Server oder Windows Server - lohnt eine Umstellung auf Linux und ebenso basierende SW bei einer langfristigen Planung?
Frage von motus5Linux22 Kommentare

Wir brauchen bei uns einen neuen Server. Dieser wird als Fileserver, Domäne Controller sowie Exchange Server verwendet. Wir versuchen ...

Netzwerkgrundlagen
VLAN - Offene Fragen
Frage von KnettenbrechNetzwerkgrundlagen17 Kommentare

Hallo zusammen, ich befasse mich derzeit mit dem Thema VLAN. Hierzu habe ich schon einige Guides gelesen, einschließlich des ...

DSL, VDSL
ISP Wechsel auf Vodefone Koax, Gebäudeverkabelung nur per Cat 7
gelöst Frage von wusa88DSL, VDSL13 Kommentare

Hallo Zusammen, ich bin momentan bei Mnet als Glasfaser Kunde und möchte Preis/Leistungs-Technisch zu Kabel Deutschland / Vodafone wechseln. ...

Windows Server
Domänencontroller trennen
Frage von Akit57Windows Server13 Kommentare

Hallo, ich hoffe das mir hier jemand meine Frage trotz der spärlichen Informationen die ich geben kann beantworten kann: ...