Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Module › Modul-Entwicklung ›

PHP Zwei Arrays - doppelte Werte überschreiben

Eingetragen von Hacky (255)
am 20.05.2011 - 16:36 Uhr in
  • Modul-Entwicklung
  • Drupal 6.x oder neuer

ich habe ein PHP problem ... ich generiere ein PDF ... dort sind benutzerlisten dargestellt. Ich habe nun zwei Arraylisten dort möchte ich gern die doppelten einträge raus hauen löschen aus einem Array, ich hab glaub ich auch die richtige Funktion gefunden "array_intersect_assoc". Aber ich mach da glaub ich noch was falsch ^^ kann mir wer sagen wie ich das mache damit ich aus den zwei arrays ein array habe und die doppelten einträge gelöscht sind ?

gruß Hacky

<?php

   
foreach($node->field_zweitnachweiss_einsatz as $field_zweitnachweiss_einsatz) {
       
$string = filterHTML($field_zweitnachweiss_einsatz['view']);
       
$pdf->textlist( utf8_decode($count1 .'. '.$string), $Fposx1, $Fposy1, 45);
       
$pdf->SetDrawColor(252, 118, 53);
       
$pdf->Rect($Fposx1 + 46, $Fposy1 - 6, 17, 5, 'FD');
       
$Fposy1 = $Fposy1 + 5;
       
$count1 = $count1 + 1;
    }
   
    foreach(
$node->field_anwesenheit as $field_anwesenheit) {
       
$string = filterHTML($field_anwesenheit['view']);
       
$pdf->textlist( utf8_decode($count1 .'. '.$string), $Fposx1, $Fposy1, 45);
       
$pdf->SetDrawColor(252, 118, 53);
       
$pdf->Rect($Fposx1 + 46, $Fposy1 - 6, 17, 5, 'FD');
       
$Fposy1 = $Fposy1 + 5;
       
$count1 = $count1 + 1;
    }
   
   
$result_array = array_intersect_assoc($field_anwesenheit, $field_zweitnachweiss_einsatz);
   
    foreach(
$result_array as $poll) {
       
$pdf->textlist( $poll, $Fposx1, $Fposy1, 45);
       
$pdf->texfield("Leitstellen-Nr.", $poll , 108, 34, 52);
    }

?>

‹ .install wird nicht ausgeführt AJAX HTTP Fehler Code 200 ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich glaube nicht, dass dir

Eingetragen von Exterior (2903)
am 20.05.2011 - 17:17 Uhr

Ich glaube nicht, dass dir array_intersect_assoc was bringt, das liefert dir schließlich die Schnittmenge der beiden Arrays, gibt dir also alle Elemente zurück, die in beiden Arrays vorhanden sind. Und das ja nicht gerade das, was du willst, wenn ich dich richtig verstanden habe.

Vielleicht solltest du es lieber mal mit array_diff probieren. Oder du machst es selber - du gehst per Schleife durch Array A, prüfst dann, ob der Wert jeweils in Array B enthalten ist und wenn nicht, trägst du ihn dort ein. Oder aber du kopierst zuerst Array B.

Beispiel:

<?php
$result_array
= $field_anwesenheit;

foreach(
$field_zweitnachweiss_einsatz as $key => $value)
  {
    if(!
in_array($value, $result_array))
      {
       
$result_array[] = $value;
      }
  }
   
foreach(
$result_array as $poll)
  {
   
$pdf->textlist( $poll, $Fposx1, $Fposy1, 45);
   
$pdf->texfield("Leitstellen-Nr.", $poll , 108, 34, 52);
  }
?>

  • Anmelden oder Registrieren um Kommentare zu schreiben

hmm das Besipeil von dir

Eingetragen von Hacky (255)
am 21.05.2011 - 13:49 Uhr

hmm das Besipeil von dir funktioniert leider nicht so wie ich das dachte.

Arraydiff zeigt mir keinen output :/ ich habe gemacht:

array1:
Hans
Peter
Olaf

array2:
Hans
Peter
Olaf
Max

<?php

    $array1
[] = $node->field_anwesenheit;
   
$array2[] = $node->field_zweitnachweiss_einsatz;
   
$newArrayList[] = array_diff($array1,$array2);

?>

ergebniss:
nichts.

eigentlich sollte stehen:
Max

  • Anmelden oder Registrieren um Kommentare zu schreiben

hm okay nun hab ich es hin

Eingetragen von Hacky (255)
am 21.05.2011 - 14:41 Uhr

hm okay nun hab ich es hin bekommen, ich hab $node->field_anwesenheit; und $node->field_zweitnachweiss_einsatz; in zwei arrays geschrieben und dann array_diff gemacht.
Nun hab ich ein Array mit:

Aber der inhalt des Array lässt sich nicht ausgeben :(

<?php

.
.
.
$newArrayList[] = array_diff($array3,$array4);

foreach(
$newArrayList as $output){
     print
$output['view'];
         print
"--";
}
?>

AnhangGröße
test.png 69.45 KB
  • Anmelden oder Registrieren um Kommentare zu schreiben

Und was genau hat an meinem

Eingetragen von Exterior (2903)
am 21.05.2011 - 16:38 Uhr

Und was genau hat an meinem Vorschlag nicht geklappt?

Ohne zu wissen, wie "$newArrayList" aufgebaut ist, kann man dir auch nicht sagen, wo der Fehler liegt.

Zeigt der Screenshot oben den Aufbau von "newArrayList? Wenn dem so sein sollte, würde ich mir Gedanken darum machen, ob denn der Schlüssel "view" an irgendeiner Stelle auftaucht. Oben im Scrennshot erscheint er schonmal nicht.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Du könntest Dich mit

Eingetragen von leda.ch (977)
am 21.05.2011 - 22:30 Uhr

Du könntest Dich mit folgenden PHP-Befehlen für Arrays befassen:

Array_Merge
Array_Unique

Allgemeine Array-Befehle für PHP

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Dynamische Ansicht von Seiteninhalt (als Tabelle?)
  • Vergabe von Berechtigungen für bestimmte Rollen; mir fehlt der Haken bzw. das „Veröffentlicht“
  • Ich brauche dringen Hilfe zu Updates oder ggf. wwie geht Composer?
  • Medien und andere Daten mit Feeds von Drupal 7 auf Drupal 10 migrieren
  • Rolle erstellen nicht zu finden
  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
Weiter

Neue Kommentare

  • Arrrrg. Nix Tabelle :-D /*
    vor 4 Tagen 12 Stunden
  • Textboxen mit Tabelle
    vor 4 Tagen 19 Stunden
  • Du sollst ja auch keine
    vor 4 Tagen 19 Stunden
  • Theme
    vor 4 Tagen 20 Stunden
  • Welches Theme benutzt du
    vor 5 Tagen 1 Stunde
  • Mit Responsive Raster hatte
    vor 5 Tagen 15 Stunden
  • Hallo Alex,um das Häkchen
    vor 6 Tagen 30 Minuten
  • Modul view_unpublished
    vor 1 Woche 3 Stunden
  • Modul "override node options"
    vor 1 Woche 22 Stunden
  • Im Grunde ist dass ein
    vor 1 Woche 3 Tagen

Statistik

Beiträge im Forum: 250270
Registrierte User: 20477

Neue User:

  • Robertnobia
  • AltonRaf
  • JeffreyPaf

» Alle User anzeigen

User nach Punkten sortiert:
wla9463
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 14 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association