php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2009

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 13.11.2008, 12:04  
Erfahrener Benutzer
 
Registriert seit: 05.09.2007
Beiträge: 177
aha_01 befindet sich auf einem aufstrebenden Ast
Standard 3 Arrays als return für eine Funktion?

Hi,

ich habe ein Block in meinem Programm, das einfach aus der Datenbank Daten holt und in 3 verschiedenen mehrdimensionalen Arrays schreibt. Ich möchte aber dieses als Funktion machen? Diese Funktion soll 3 mehrdimensionale Arrays zurückgeben. Geht das so? Wenn ja dann bitte wie? Oder hat jemand eine bessere Lösung?



Bin sehr dankbar für jede Hilfe


Grüße Aha
aha_01 ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 13.11.2008, 12:07  
Erfahrener Benutzer
 
Benutzerbild von tomtaz
 
Registriert seit: 17.06.2008
Beiträge: 1.762
PHP-Kenntnisse:
Fortgeschritten
tomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig nett
tomtaz eine Nachricht über ICQ schicken tomtaz eine Nachricht über Skype™ schicken
Standard

Zeig uns doch mal ein bisschen code, und vor allem wie die Arrays angeordnet sind
__________________
Mfg Tomtaz
"Es soll jetzt diese Erfindung geben.... Kugel oder so heißt die. Ist so eine Art Suchmaschine..."
tomtaz ist offline  
Alt 13.11.2008, 12:10  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Einfach in ein weiteres Feld verpacken und dann zurückgeben.
PHP-Code:
<?php
function foo() {
  return array(
    array(
1,2,3),
    array(
4,5,6),
    array(
7,8,9)
  );
}

$x foo();
echo 
$x[1][1]; // zweites Element des zweiten Feldes.
David ist offline  
Alt 13.11.2008, 12:10  
Erfahrener Benutzer
 
Benutzerbild von GelaMu
 
Registriert seit: 05.03.2006
Beiträge: 183
GelaMu
Standard

Du kannst von der Funktion doch einfach nur die drei Arrays zurückgeben zu lassen? Das geht mit einem einfachen return array($a1, $a2, $a3); wie z.B. hier:

PHP-Code:
<?php
function ff() {
   
$a1 = array("Irgend" => array("ein" => array("mehrdimensionales" => "Array #1")));
   
$a2 = array("Irgend" => array("ein" => array("mehrdimensionales" => "Array #2")));
   
$a3 = array("Irgend" => array("ein" => array("mehrdimensionales" => "Array #3")));
   return array(
$a1$a2$a3);
}

// Jetzt hast du halt in $meinArray drei Arrays
$meinArray ff();
print_r($meinArray);
// Die Ausgabe von print_r() ist dann:
/*
Array
(
    [0] => Array
        (
            [Irgend] => Array
                (
                    [ein] => Array
                        (
                            [mehrdimensionales] => Array #1
                        )

                )

        )

    [1] => Array
        (
            [Irgend] => Array
                (
                    [ein] => Array
                        (
                            [mehrdimensionales] => Array #2
                        )

                )

        )

    [2] => Array
        (
            [Irgend] => Array
                (
                    [ein] => Array
                        (
                            [mehrdimensionales] => Array #3
                        )

                )

        )

)
*/

?>
GelaMu ist offline  
Alt 13.11.2008, 12:12  
Erfahrener Benutzer
 
Registriert seit: 20.01.2005
Beiträge: 1.557
PHP-Kenntnisse:
Fortgeschritten
Buhmann ist zur Zeit noch ein unbeschriebenes Blatt
Buhmann eine Nachricht über ICQ schicken Buhmann eine Nachricht über MSN schicken
Standard

Theoretisch kannst du einfach die drei Arrays in ein weiteres Array packen, und dieses zurückgeben.
PHP-Code:
<?php
function foo() {
   
//...
   
return array($array1,$array2,$array3);
}
//...
$data foo();
$array1 $data[0];
$array2 $data[1];
$array3 $data[2];
?>
Ob es bessere und saubere Methoden gibt, hängt vorallem davon ab, was deine Funktion eigentlich genau machen soll und so weiter ... ein bisschen Beispielcode wäre nicht schlecht


[EDIT] meine Güte bin ich langsam ... gleich von zweien überholt worden *g*
Buhmann ist offline  
Alt 13.11.2008, 12:13  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 34.248
PHP-Kenntnisse:
Fortgeschritten
nikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz sein
Standard

Soll ichs auch noch mal schreiben? LOL
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline  
Alt 13.11.2008, 12:15  
Erfahrener Benutzer
 
Benutzerbild von GelaMu
 
Registriert seit: 05.03.2006
Beiträge: 183
GelaMu
Standard

Ohaaaaaa, ich bin wohl eine Schnecke was das Tippen angeht Ich glaube ihm ist mehr als schnell geholfen
GelaMu ist offline  
Alt 13.11.2008, 12:34  
Erfahrener Benutzer
 
Registriert seit: 05.09.2007
Beiträge: 177
aha_01 befindet sich auf einem aufstrebenden Ast
Standard

Hi,

also ich kann nur sagen:

VIELEN DANK


Aha

Schöne Grüße an alle
aha_01 ist offline  
Alt 13.11.2008, 13:10  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Dann den Thread bitte noch als [Erledigt] markieren. Danke!
cycap ist offline  
Alt 08.12.2009, 10:05  
Benutzer
 
Registriert seit: 03.03.2009
Beiträge: 34
PHP-Kenntnisse:
Anfänger
lape befindet sich auf einem aufstrebenden Ast
Standard

hier würde ich mich gern noch mal einklinken.
Und zwar habe ich ein array das per while schleife aus der datenabnk gefüllt wird:
PHP-Code:
    while($stmt->fetch())
    {
      
array_push($regionen,$Region);
    } 
wennich einen return auf $regionen mache bekomme ich leider nciht die werte zurück. hat jemand vielleich nen tip?
Außerhalb der Funktion funktioniert die Ausgabe übrigens problemlos...stehe irgendwie aufm Schlauch
lape 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
JS: Einführung - Javascript im Schichtenmodell nikosch Tutorials 4 11.04.2009 17:06
Prototype Ajax Array Datenmüll notyyy HTML, Usability und Barrierefreiheit 2 08.04.2008 10:57
Voraussetzungen für dieses Thumbnail Skript Plague PHP Tipps 2008 9 19.09.2007 13:35
gpc_quotes funktion: verbesserungsvorschläge? Promaetheus PHP Tipps 2007 10 12.08.2007 19:29
Sortieren eines Arrays mittels Funktion ? madSoul PHP Tipps 2007 16 22.02.2007 11:49
Parsen von Delimitern Basti Tutorials 0 30.09.2006 21:24
Funktion & return array() Schneckenkind PHP Tipps 2006 5 06.06.2006 10:09
PHP-GTK Tutorial Beitragsarchiv 9 02.11.2005 21:07
[Erledigt] Problem mit Referenzen auf Arrays PHP-Fortgeschrittene 4 16.09.2005 23:13
[Erledigt] Datenbank nicht erreichbar PHP Tipps 2005-2 27 19.08.2005 12:20
(schnellere) Funktion zum Zusammenfassen von CSS PHP-Fortgeschrittene 21 08.08.2005 16:47
Funktion schreiben um das Return einer Website einzufangen PHP Tipps 2004-2 40 30.12.2004 21:18
Erkennung von Arrays in Strings PHP-Fortgeschrittene 15 07.12.2004 13:00
Return mit rekursiver Funktion PHP-Fortgeschrittene 5 28.09.2004 13:35

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php return array, php function return array, return array php, php array return, php function array übergeben, php function return, php return array function, function return array php, php funktion return array, php funktionen return array, php function array, array return php, php return, php function array zurückgeben, return php, function return array, php function array return, php function returns array, php return function, php return arrays

Alle Zeitangaben in WEZ +1. Es ist jetzt 16:59 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