SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

PHP 5.3 & MySQL 5.1

PHP 5.3 & MySQL 5.1 zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 13.09.2006, 15:51:45
ghostface ghostface ist offline
Anfänger
 
Registriert seit: Sep 2006
Beiträge: 3
Array Werte vergleichen

Habe zwei Arrays, aus denen ich Werte vergleichen muss.
Zuerst muss ich schauen, ob beim Key [0] => vom Array 1 und Array2 das gleiche steht.
Wenn das gleiche steht muss es die Werte vom Array2 (Werte [7] bis [13] -> Key [7]+[7]; [8]+[8] usw.)adieren.
Wenn die Werte addiert sind, muss ich sie vom Array1 subtrahieren.
Wenn die Werte kleiner sind als 0, muss ich sie mit den restlichen Werten des unterarrays rausschreiben.
Bin damit noch übervordert, da ich noch nicht sehr lange mit arrays gearbeitet habe..

Bsp.

Array1[10]: 4507
Array2[10]: 5740 (bereits addiert (1233+4507))

Array1[10]-Array2[10]=4507-5740=(-1233)

Rausschrieiben:
Langnau im Emmental ;902;0;DM93;Ruefer Heinz;902_1.itf;04.08.2006;zahl1;zahl2,zahl3,zahl4,zahl5,zahl6,zahl7,2 0060804

ARRAY1
Array (
[1] => Array (
[0] => Langnau im Emmental
[1] => 902
[2] => 0
[3] => EMO
[4] => Ruefer Heinz
[5] =>
[6] =>
[7] => 1207
[8] => 54
[9] => 54
[10] => 4507
[11] => 2570
[12] => 71
[13] => 0
[14] => 20060804
)
)

ARRAY2
Array (
[1] => Array (
[0] => Signau
[1] => 902 [2] => 0
[3] => DM93
[4] => Ruefer Heinz
[5] => 902_1.itf
[6] => 04.08.2006
[7] => 4644
[8] => 4
[9] => 4
[10] => 3716
[11] => 1152
[12] => 13
[13] => 0
[14] => 20060804
)
[2] => Array (
[0] => Langnau im Emmental
[1] => 902
[2] => 0
[3] => DM93
[4] => Ruefer Heinz
[5] => 902_2.itf
[6] => 04.08.2006
[7] => 1559
[8] => 0
[9] => 0
[10] => 1233
[11] => 439
[12] => 8
[13] => 0
[14] => 20060804
)
[3] => Array (
[0] => Langnau im Emmental
[1] => 902
[2] => 0
[3] => DM93
[4] => Ruefer Heinz
[5] => 902_3.itf
[6] => 04.08.2006
[7] => 1207
[8] => 54
[9] => 54
[10] => 4507
[11] => 2570
[12] => 71
[13] => 0
[14] => 20060804
)
)

Geändert von ghostface (13.09.2006 um 16:17:41 Uhr)
Mit Zitat antworten
  #2  
Alt 13.09.2006, 16:55:58
MatMel MatMel ist offline
Member
 
Registriert seit: Aug 2005
Beiträge: 644
MatMel eine Nachricht über ICQ schicken
AW: Array Werte vergleichen

PHP-Code:
//Zuerst muss ich schauen, ob beim Key [0] => vom Array 1 und Array2 das gleiche steht.
if($das_erste[0] == $das_zweite[0] )
{
   
//Wenn das gleiche steht muss es die Werte vom Array2 (Werte [7] bis [13] -> Key [7]+[7]; [8]+[8] usw.)adieren.
   
for($a=7$a<=13$a++)
   {
      
$das_zweite[$a] *= 2;  //jeweils verdoopeln
   
}
   
//Wenn die Werte addiert sind, muss ich sie vom Array1 subtrahieren.
   
for($b=7$b<=13$b++)
   {
      
$das_zweite[$b] = $das_erste[$b] - $das_zweite[$b]; // abziehen udn wieder ins zweite stecken
   
}
   
//Wenn die Werte kleiner sind als 0, muss ich sie mit den restlichen Werten des unterarrays rausschreiben.
   
$rausschreiben true;  //grundsätzlich wird rausgeschreiben
   
for($c=7$c<=13$c++)
   {
      if( 
$das_zweite[$c] >= 0){$rausschreiben false; } // alle durschauen ob eins über 0 is
   
}
   foreach( 
$das_zweite as $elem)
   {
      echo
"$elem \n";
   }

Ich hoff ich habs richtig verstanden!

Die drei for Schleifen ließen sich auch zu einer machen...

Geändert von MatMel (13.09.2006 um 16:57:00 Uhr)
Mit Zitat antworten
  #3  
Alt 13.09.2006, 17:09:48
ghostface ghostface ist offline
Anfänger
 
Registriert seit: Sep 2006
Beiträge: 3
AW: Array Werte vergleichen

hast alles bis auf das hier richtig verstanden:

//Wenn das gleiche steht muss es die Werte vom Array2 (Werte [7] bis [13] -> Key [7]+[7]; [8]+[8] usw.)adieren.
for($a=7; $a<=13; $a++)
{
$das_zweite[$a] *= 2; //jeweils verdoopeln
}

es geht nicht um das verdoppeln vo werten, sonder darum, dass in allen arrays von array2 die bereits durch die vordere selektion gekommen sind die werte zb. beim key [10] 1233 und 4507 addiert werden. verstehst du was ich meine? ist ein bischen schwierig zu vormulieren.. schonamal danke für deinen lösungsvorschlag!!

Geändert von ghostface (13.09.2006 um 17:12:25 Uhr)
Mit Zitat antworten
  #4  
Alt 19.09.2006, 17:43:57
MatMel MatMel ist offline
Member
 
Registriert seit: Aug 2005
Beiträge: 644
MatMel eine Nachricht über ICQ schicken
AW: Array Werte vergleichen

Also ich wage noch einen Versuch:

PHP-Code:
<?PHP
 
//Zuerst muss ich schauen, ob beim Key [0] => vom Array 1 und Array2 das gleiche steht.
if($das_erste[0] == $das_zweite[0] )

   
//Wenn das gleiche steht muss es die Werte vom Array2 (Werte [7] bis [13] -> Key [7]+[7]; [8]+[8] usw.)adieren.
   
for($a=7$a<=13$a++)
   {
      foreach(
$das_zweite as $value)
      {
         
$add_result[$a] += $value[$a];  //jeweils dazuaddieren
      
}
   }
   
//Wenn die Werte addiert sind, muss ich sie vom Array1 subtrahieren.
   
for($b=7$b<=13$b++)
   {
      
$add_result[$b] = $das_erste[$b] - $add_result[$b]; // abziehen udn wieder ins zweite stecken
   
}
   
//Wenn die Werte kleiner sind als 0, muss ich sie mit den restlichen Werten des unterarrays rausschreiben.
   
$rausschreiben true;  //grundsätzlich wird rausgeschreiben
   
for($c=7$c<=13$c++)
   {
      if( 
$add_result[$c] >= 0){$rausschreiben false; } // alle durschauen ob eins über 0 is
   
}
   foreach( 
$add_result as $elem)
   {
      echo
"$elem \n";
   } 


}  
?>
Ich hoffe jetzt passts. Vorher war auch in den andren for Schleifen noch ein kleiner Denkfehgler drin (es wurde immer auf das ARRAY2 zugegriffen, nicht auf dessen Unterarrays).

Gruß,
Matze

Geändert von MatMel (19.09.2006 um 17:45:13 Uhr)
Mit Zitat antworten
  #5  
Alt 20.09.2006, 10:02:16
ghostface ghostface ist offline
Anfänger
 
Registriert seit: Sep 2006
Beiträge: 3
AW: Array Werte vergleichen

wie könnte ich die were aus array2 zusammenfügen, dass das array2 anstatt so wie oben im Beispiel so aussehen würde?

ARRAY2
Array (
[1] => Array (
[0] => Signau
[1] => 902 [2] => 0
[3] => DM93
[4] => Ruefer Heinz
[5] => 902_1.itf
[6] => 04.08.2006
[7] => 4644
[8] => 4
[9] => 4
[10] => 3716
[11] => 1152
[12] => 13
[13] => 0
[14] => 20060804
)
[2] => Array (
[0] => Langnau im Emmental
[1] => 902
[2] => 0
[3] => DM93
[4] => Ruefer Heinz
[5] => 902_2.itf
[6] => 04.08.2006

[7] => 2766
[8] => 54
[9] => 54
[10] => 5740
[11] => 3009
[12] => 79
[13] => 0

[14] => 20060804
)
)
Unterschied: Wenn der key[0] gleich ist, werden die Werte [7] bis [13] addiert und aus zwei arrays eines gemacht.

Geändert von ghostface (20.09.2006 um 10:06:54 Uhr)
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

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

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Array(s)-Problem. 2 Arrays mit vergleichen und versch. Werte addieren quasimodus PHP Grundlagen 1 30.05.2006 16:49:11
Problem mit array (Werte ersetzen) Zent PHP Grundlagen 3 09.03.2005 16:27:10
Einzelne Daten aus Textdatei Auslesen azubinator PHP Grundlagen 153 17.12.2004 14:36:58
in ein assoziatives Array weitere Werte einfügen RDJ PHP Grundlagen 2 18.06.2004 10:04:56
Werte aus zwei arrays vergleichen toto71 PHP für Fortgeschrittene und Experten 2 10.12.2002 12:08:34


Alle Zeitangaben in WEZ +2. Es ist jetzt 19:09:25 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt