Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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 zusammenführen

Frage Entwicklung PHP

Mitglied: ottscho

ottscho (Level 2) - Jetzt verbinden

13.07.2011 um 11:04 Uhr, 3460 Aufrufe, 5 Kommentare

Hallo,

ich habe 3 Array, welche ich gerne zusammenführen würde.

order$

array(4) {
["orderID"]=> string(3) "164"
["ordernumber"]=> string(5) "20027"
["order_number"]=> string(5) "20027"
["userID"]=> string(1) "1" }

postion$

array(2) {
["positionID"]=> string(1) "1"
["number"]=> string(5) "11111" }

user$

array(2) {
["userID"]=> string(2) "50"
["namer"]=> string(4) "Carl" }

Mache ich das nun mit array_merge so erhalte ich dies:
array(4) {
["orderID"]=> string(3) "164"
["ordernumber"]=> string(5) "20027"
["order_number"]=> string(5) "20027"
["userID"]=> string(1) "1" }
array(2) {
["positionID"]=> string(1) "1"
["number"]=> string(5) "11111" }
array(2) {
["userID"]=> string(2) "50"
["namer"]=> string(4) "Carl" }

Sozusagen 3 Array's in einem. Was ich aber nicht will.
Ich hätte es gerne komplett in einem Array so:

array(8) {
["orderID"]=> string(3) "164"
["ordernumber"]=> string(5) "20027"
["order_number"]=> string(5) "20027"
["userID"]=> string(1) "1"
["positionID"]=> string(1) "1"
["number"]=> string(5) "11111"
["userID"]=> string(2) "50"
["namer"]=> string(4) "Carl" }

Könnt ihr mir weiterhelfen?

Danke
Mitglied: Arano
13.07.2011 um 11:47 Uhr
Hi Ottscho

Hm... laut PHP-Manual - array_merge() sollte es doch genau so funktionieren !?

Am besten du kontrollierst noch einmal mit print_r() und/oder var_dump() die Inhalte der Variablen und poste doch auch mal das Stück PHP-Script mit dem du es versucht hast !
FAQ - Formatierungen in den Beiträgen


~Arano
Bitte warten ..
Mitglied: ottscho
13.07.2011 um 12:02 Uhr
Hey Arano,

hier der Code und darunter dann die Asugabe

01.
		// Hauptdaten der Bestellung 
02.
		$order = current($export->sGetOrders(array("orderID"=>$orderID))); 
03.
		var_dump($order ); 
04.
		print_r ("<br />"); 
05.
		print_r ("<br />");		 
06.
 
07.
		// Bestellpositionen 
08.
		$positions = $export->sOrderDetails(array("orderID"=>$orderID)); 
09.
		var_dump($positions); 
10.
		print_r ("<br />"); 
11.
		print_r ("<br />"); 
12.
 
13.
		// Kundendaten 
14.
		$user = $export->sOrderCustomers (array("orderID"=>$orderID)); 
15.
		var_dump($user ); 
16.
		print_r ("<br />"); 
17.
		print_r ("<br />"); 
18.
		print_r ("<br />"); 
19.
 
20.
 		$result = array_merge($order, $positions, $user); 
21.
		var_dump($result); 
22.
		exit;
array(37) { ["orderID"]=> string(3) "171" ["ordernumber"]=> string(5) "20029" ["order_number"]=> string(5) "20029" ["userID"]=> string(1) "1" ["customerID"]=> string(1) "1" ["invoice_amount"]=> string(5) "52.95" ["invoice_amount_net"]=> string(5) "44.49" ["invoice_shipping"]=> string(1) "3" ["invoice_shipping_net"]=> string(4) "2.52" ["ordertime"]=> string(19) "2011-07-13 12:01:13" ["status"]=> string(1) "0" ["statusID"]=> string(1) "0" ["cleared"]=> string(2) "17" ["clearedID"]=> string(2) "17" ["paymentID"]=> string(1) "5" ["transactionID"]=> string(0) "" ["comment"]=> string(0) "" ["customercomment"]=> string(0) "" ["net"]=> string(1) "0" ["netto"]=> string(1) "0" ["partnerID"]=> string(0) "" ["temporaryID"]=> string(0) "" ["referer"]=> string(0) "" ["cleareddate"]=> string(19) "0000-00-00 00:00:00" ["cleared_date"]=> string(19) "0000-00-00 00:00:00" ["trackingcode"]=> string(0) "" ["language"]=> string(2) "de" ["currency"]=> string(3) "EUR" ["currencyFactor"]=> string(1) "1" ["subshopID"]=> string(1) "1" ["dispatchID"]=> string(1) "9" ["currencyID"]=> string(1) "1" ["cleared_description"]=> string(5) "Offen" ["status_description"]=> string(5) "Offen" ["payment_description"]=> string(8) "Vorkasse" ["dispatch_description"]=> string(14) "Normal Versand" ["currency_description"]=> string(4) "Euro" } 
 
array(1) { [183]=> array(18) { ["orderdetailsID"]=> string(3) "183" ["orderID"]=> string(3) "171" ["ordernumber"]=> string(5) "20029" ["articleID"]=> string(2) "13" ["articleordernumber"]=> string(11) "SW2001_6558" ["price"]=> string(5) "49.95" ["quantity"]=> string(1) "1" ["invoice"]=> string(5) "49.95" ["name"]=> string(20) "Melamin Schale Weiss" ["status"]=> string(1) "0" ["shipped"]=> string(1) "0" ["shippedgroup"]=> string(1) "0" ["releasedate"]=> string(10) "0000-00-00" ["modus"]=> string(1) "0" ["esdarticle"]=> string(1) "0" ["taxID"]=> string(1) "1" ["tax"]=> string(2) "19" ["esd"]=> string(1) "0" } }

Ich glaube ich hab den Fehler gefunden.
So sollte es gehen:

01.
 		$result = array_merge($order, $positions[183], $user[171]); 
02.
 
Bitte warten ..
Mitglied: ottscho
13.07.2011 um 12:14 Uhr
Hab gelöst Danke dir.

01.
$result = $order
02.
 
03.
foreach ($positions as $position) { 
04.
 
05.
	$result = array_merge($result , $position); 
06.
 
07.
08.
 
09.
foreach ($user as $v_user) { 
10.
 
11.
	$result = array_merge($result , $v_user); 
12.
 
13.
}
Bitte warten ..
Mitglied: Arano
13.07.2011 um 12:22 Uhr
Hi

Ja super... habe ja nicht viel gemacht *g*

Dürfte das nicht auch so gehen !?
01.
$result = array_merge($order, current($positions), $user[$orderID]); 

~Arano

Kannst den Beitrag dann ja auf gelöst setzen.
Bitte warten ..
Mitglied: Snowman25
13.07.2011 um 12:23 Uhr
Hallo ottscho,

lösche bitte alle persönlichen Daten in deinem Post. Da kann man ja Name und Adresse direkt rauslesen.
Entweder, du nimmst die Array-Ausgabe wieder raus, oder du X't die Namen und Daten aus.

Gruß
Snowman25
Bitte warten ..
Ähnliche Inhalte
PHP
gelöst PHP - unique-array() und sort() (14)

Frage von ThomasXYZ zum Thema PHP ...

Batch & Shell
Powershell Import Computer aus csv in array und Befehl abarbeiten (4)

Frage von Robbi666 zum Thema Batch & Shell ...

SAN, NAS, DAS
CLI Cable HP 2012fc sc modular smart array oder serielles Kabel (8)

Frage von Dominik-EUNES zum Thema SAN, NAS, DAS ...

Neue Wissensbeiträge
Windows 10

Windows 8.x oder 10 Lizenz-Key aus dem ROM auslesen mit Linux

(6)

Tipp von Lochkartenstanzer zum Thema Windows 10 ...

Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(38)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Heiß diskutierte Inhalte
Festplatten, SSD, Raid
POS Hardware und alternativen zu Raid 1? (21)

Frage von Brotkasten zum Thema Festplatten, SSD, Raid ...

Viren und Trojaner
Verschlüsselungstrojaner simulieren (18)

Frage von AlbertMinrich zum Thema Viren und Trojaner ...

Windows 10
Windows 10 Home "Netzlaufwerk nicht bereit" (17)

Frage von Oggy01 zum Thema Windows 10 ...

Exchange Server
Exchange Postfach leeren - nicht löschen (10)

Frage von AndreasOC zum Thema Exchange Server ...