php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 22.09.2005, 18:13  
Erfahrener Benutzer
 
Registriert seit: 30.06.2008
Beiträge: 152
solitaer befindet sich auf einem aufstrebenden Ast
Standard array_search in Mehrdimensionalen Arrays.

Hallo,

folgendes Problem :

Ich hole mir aus einer Datenbank Datensätze like this :

Name, ID

Dieses speichere ich in ein Mehrdimensionales Array :
Code:
$data[1][name]=$zeile["name"];
$data[1][id]=$zeile["id"];
Alles schön und gut.

Jetzt will ich in dem Array aber nur die haben, die noch nicht
im Array sind. Also schwupp mal im PHPFAQ geschaut und auch gefunden :

also folgenden Code generiert :

Code:
if (!array_search($zeile["name"],$data)
{
$data[1][name]=$zeile["name"];
$data[1][id]=$zeile["id"];
}
Schön und gut. Funktioniert aber nicht. Er schreibt trotzdem jeden Datensatz ins Array ohne Rücksicht auf verluste !

jemand ne Idee ?

Gruss,

Werner
solitaer ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 22.09.2005, 19:22  
Waq
Erfahrener Benutzer
 
Registriert seit: 15.08.2004
Beiträge: 2.473
Waq
Standard

Wenn die IDs eindeutig sind, kannst Du das array so aufbauen:
$data[$zeile["id"]]=$zeile["name"];


Der Beitrag wurde verschoben, wegen...
... Postings im falschen Forum. Bitte beim nächsten Mal darauf achten..

Bemerkung:
Die gestellte Frage entspricht nicht dem Wissensstand eines/einer Fortgeschrittenen. Dazu: http://www.phpfriend.de/forum/viewtopic.php?t=21515

moved to PHP - Anfänger
__________________
mod = master of disaster
Waq ist offline  
Alt 22.09.2005, 22:03  
Erfahrener Benutzer
 
Registriert seit: 30.06.2008
Beiträge: 152
solitaer befindet sich auf einem aufstrebenden Ast
Standard Das ist sehr nett...

Vor allen das umsetzen des Beitrags zu den Anfängern finde ich nett. Aber ok.

Damit ist die Frage jedoch nicht beantwortet.

Ich wollte nicht wissen wie ich den Array anders aufbauen kann. Das weiss ich schon. Ich brauche den Array aber in numerischer Reihenfolge.

Und B.

Ich habe vorher Google gequält,
Programmiere seit 22 Jahren
Und habe das Manuel gelesen.

Eine "professionelle" Antwort war das sicherlich nicht.


Ich wollte NICHT wissen wie ich den Array anders aufbauen kann,
sondern warum dieser shit Befehl nicht funktioniert !

Nichts für Ungut,

Greets,

Werner
solitaer ist offline  
Alt 22.09.2005, 23:15  
Waq
Erfahrener Benutzer
 
Registriert seit: 15.08.2004
Beiträge: 2.473
Waq
Standard Re: Das ist sehr nett...

Zitat:
Zitat von Solitaer
Programmiere seit 22 Jahren
Ernsthaft?

Zitat:
Zitat von Solitaer
Ich wollte NICHT wissen wie ich den Array anders aufbauen kann, sondern warum dieser shit Befehl nicht funktioniert !
1. ist "jemand ne Idee ?" eine der denkbar unklarsten Fragestellungen.

2. Der Befehl Funktioniert. Und warum er nicht das ist, was Du brauchst, hast Du doch schon selbst festgestellt, nämlich dass das Array mehrdimensional ist, und die allermeisten Array-Funktionen nicht darauf ausgelegt.
array_search() findet in dem Mehrdimensionalen Array nur Arrays, die ungleich dem String sind, den Du suchst.

Dein Fall ist z.B. durch ne kleine Schleife zu lösen:

funktion search_in_strange_array($arr,$findme) {
foreach ($arr as $value) {
if ($value["name"] == $findme)
return true;
}
return false;
}

PS: Dir ist klar, dass Du, um eine definitionsgemäß professionelle Antwort zu bekommen, mich bezahlen müsstest? Da Du es nicht tust, musst Du dich mit der Hilfsbrereitschaft zufrieden geben, die meine Laune grad hergibt, mal abgesehen davon, dass es nicht nur unprofessionell, sondern unsinnig ist, auf unpräzise Fragen präzise Antworten zu erwarten. Und wenn Du meinst, das vorkauen einer einfachen Schleife gehöre zu den Fortgeschrittenen, hast Du da ganz andere Maßstäbe als ich.
__________________
mod = master of disaster
Waq ist offline  
Alt 23.09.2005, 09:59  
Erfahrener Benutzer
 
Registriert seit: 30.06.2008
Beiträge: 152
solitaer befindet sich auf einem aufstrebenden Ast
Standard

Mal grundlegend eine Anmerkung.

Ich wollte dich nicht persönlich Angreifen, sondern das System das hier herscht.

Diese vorgehensweise ist mir schon mal passiert. Das zwar der Beitrag ansich kritisiert und verschoben wurde, jedoch zur Lösung nicht beigetragen wurde.

Und anstatt zu Antworten, obwohl man nicht will, sollte man lieber gar nicht antworten.

Das ist jedoch ein typisch "deutsches" Problem. Wir verwalten uns zu tode.

----

Danke für deinen konstruktiven Beitrag Nr. 2. Selber im Array zu suchen wäre meine 2. Lösung gewesen. Ich wollte halt nur das Rad nicht neu
erfinden und lieber vorgefertigte Befehle nutzen.

Die Antwort : Das die Arraybefehle auf mehrdimensionalen Array keine wirkung haben war hilfreich.

-----

Mir sind die Forenregeln bekannt, aber durchaus nicht immer klar.

Jemanden als Profi hinzustellen nur weil er einen gewissen Befehlssatz immer benutzt halte ich für kindisch.

Das nur mal so am Rande.

Und

Ja ich programmiere seit 22 Jahren.

Angefangen 1983 auf einem C64- Schnief.
Dann CanDo auf dem Amiga
C++ auf einem 386er
Datenbankprogrammierung unter UNIX mit INFORMIX
Jetzt PHP und C++ auf einem PC.


Gruss,

Werner
solitaer ist offline  
Alt 23.09.2005, 14:24  
Waq
Erfahrener Benutzer
 
Registriert seit: 15.08.2004
Beiträge: 2.473
Waq
Standard

Zitat:
Zitat von Solitaer
Die Antwort : Das die Arraybefehle auf mehrdimensionalen Array keine wirkung haben war hilfreich.
Das stimmt so nicht ganz. Die Array-Funktionen arbeiten linear die erste Ebene eines Mehrdimensionalen Arrays ab, wie in jeder anderen Sprache eigentlich auch. Je nachdem, um welche Funktion es sich handelt, und wenn man sich bewusst ist, dass ein mehrdimensionales Array einfach ein Array von Arrays ist, kann man damit durchaus sinnvolle Dinge anstelllen.
Was die Array-Funktionen nicht tun, ist rekursiv in die Unter-Arrays hinabzusteigene.
__________________
mod = master of disaster
Waq ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Mehrere Arrays summieren buggybugga PHP-Fortgeschrittene 8 22.07.2008 11:51
If-Abfrage mit mehrdimensionalen Arrays fehlerhaft aherzog PHP Tipps 2008 19 23.06.2008 08:16
Mehrere Mehrdimensionale Arrays Stefano PHP Tipps 2006 5 12.10.2006 13:18
Größe des Arrays oder der MySQL-Abfrage in Bytes? Gumfuzi PHP Tipps 2006 10 03.10.2006 16:48
Arrays sortieren, Bezeichnung, Preis Ticos PHP Tipps 2006 4 07.09.2006 19:37
Arrays kreuzen PHP Tipps 2006 13 08.03.2006 11:36
2 Arrays kombinieren Transmitter PHP Tipps 2006 5 02.01.2006 16:16
[Erledigt] 2 Arrays miteinander vergleichen PHP Tipps 2007 3 17.12.2005 16:54
Objektorientierter Zugriff auf Multidimensionale Arrays PHP-Fortgeschrittene 31 26.11.2005 21:46
in_array() funktioniert nicht bei mehrdimensionalen Arrays? PHP Tipps 2005-2 6 12.10.2005 13:54
Problem beim vergleichen von 2 Arrays PHP Tipps 2005-2 1 06.10.2005 14:25
2 Arrays vergleichen und unterschiede auslesen PHP Tipps 2005 6 25.02.2005 09:34
Erkennung von Arrays in Strings PHP-Fortgeschrittene 15 07.12.2004 13:00
2 arrays in abhängigkeit ??? PHP Tipps 2004 2 11.08.2004 21:19
Werte eines Arrays in eine MySQL schreiben PHP Tipps 2004 2 28.06.2004 13:32

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
array_search mehrdimensional, php array_search mehrdimensional, array_search mehrdimensionales array, array_search, php array_search mehrdimensionales array, array_search rekursiv, array search mehrdimensional, php in_array mehrdimensional, php array_search, php mehrdimensionales array_search, array_search mehrdimensional php, array_search php mehrdimensional, search_in_strange_array, php mehrdimensionales array array_search, php array_search rekursiv, php array_search zweidimensional, mehrdimensionales array array_search, array_search mehrdim arrays, array_search mehrdimensionale arrays, php find in array mehrdimensional

Alle Zeitangaben in WEZ +2. Es ist jetzt 08:38 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.