Antworten auf deine Fragen:
Neues Thema erstellen

Nur die letzte Variable eines foreach-Arrays ausgeben

SWFP

SWFP Mitglied

Hi,

ich habe folgendes Script
PHP:
<?php
$beitrag = file("home_de.txt");
krsort($beitrag);

foreach($beitrag as $ausgabe)
   {
   $ausgabe = stripslashes($ausgabe);
   $zerlegen = explode("|", $ausgabe);

   echo "
  <h1 id='vtks'>$zerlegen[0]</h1>
  <p>$zerlegen[1]<br />
  <br />
  $zerlegen[2]
<ul id='angebot'>
<li>$zerlegen[3]</li>
<li>$zerlegen[4]</li>
</ul>
$zerlegen[5]<br />
<br />
$zerlegen[6]<br />
$zerlegen[7]</p>
   ";
   }
?>

Es ermöglich mir einen Text zu editieren und als neue Version abzuspeichern. Entweder muss ich es nun so abändern, dass das Textdokument einfach überschrieben wird, lieber wäre mir aber, wenn ich auf der Ausgabeseite immer nur die aktuelle Version, spricht, die letzte Variable im foreach-Array hätte.

Wie kann ich das bewerkstelligen?

MfG
Seb
 

SWFP

SWFP Mitglied

AW: Nur die letzte Variable eines foreach-Arrays ausgeben

Ich glaube, ich habe mich etwas unklar ausgedrückt:

Bevor ich meine Textdatei aus der das Array erstellt wird bearbeite, sieht es darin in etwa so aus:

Code:
[COLOR="SeaGreen"]Überschrift|Erster Textabsatz|Zweiter Textabsatz|usw.[/COLOR]

Habe ich es dann bearbeitet, sieht es so aus:

Code:
[COLOR="SeaGreen"]Überschrift|Erster Textabsatz|Zweiter Textabsatz|usw.[/COLOR]

[COLOR="Red"]Überschrift neu|Erster Textabsatz neu|Zweiter Textabsatz neu|usw.[/COLOR]

Also er speichert die einzelnen Versionen untereinander.

Das sieht dann so aus:
Überschrift
Erster Textabsatz...
Zweiter Textabsatz...


Überschrift neu
Erster Textabsatz neu...
Zweiter Textabsatz neu...

Aber ich möchte nur die zweite Version, also
Code:
[COLOR="Red"]Überschrift neu|Erster Textabsatz neu|Zweiter Textabsatz neu|usw.[/COLOR]
haben.

Wie kann ich das machen?
 

Duddle

Posting-Frequenz: 14µHz

AW: Nur die letzte Variable eines foreach-Arrays ausgeben

Indem du mit array_pop() das letzte Element aus dem Array $beitrag holst und es behandelst. Du brauchst dann keine Schleife mehr.


Duddle
 

SWFP

SWFP Mitglied

AW: Nur die letzte Variable eines foreach-Arrays ausgeben

Dann bekomme die letzte Version der Überschrift und der Textabsätze?
 

Duddle

Posting-Frequenz: 14µHz

AW: Nur die letzte Variable eines foreach-Arrays ausgeben

Nein, du bekommst das letzte Element im Array $beitrag. Ob das die "letzte Version" ist, hängt von der Struktur und Sortierung des Arrays ab. So wie du es geschildert hast, solltest du aber genau das bekommen.


Duddle
 

SWFP

SWFP Mitglied

AW: Nur die letzte Variable eines foreach-Arrays ausgeben

Ich glaube nicht. Das foreach läuft durch und gibt bei jedem Durchgang eine Version zurück. Ich möchte die letzte Version also den letzten Durchgang. Also alle Variablen (zerlegen[1], zerlegen [2], ...) werden in jedem Durchgang benutzt. Das ist das Problem.
 

Duddle

Posting-Frequenz: 14µHz

AW: Nur die letzte Variable eines foreach-Arrays ausgeben

Ja, und ich sage dir dass du keine Schleife brauchst, wenn du dir direkt das letzte Element holst.

Stell dir vor, du schaust einen Film in einem alten Projektor. Der Film besteht aus 24 Einzelbildern pro Sekunde, die vor einer Lichtquelle hintereinander gezeigt werden. Das ist die Schleife - für jedes Bild in der Filmrolle zeige dieses Bild.
Du musst aber nicht jedes Mal die gesamte Filmrolle durchgehen, wenn du nur das letzte Bild brauchst. Stattdessen greifst du direkt zum Ende der Rolle, schneidest das letzte Bild ab und hälst es vor die Lichtquelle. Das ist das array_pop().


Duddle
 

fakerer

Aktives Mitglied

AW: Nur die letzte Variable eines foreach-Arrays ausgeben

ich würde das ganze mit end machen
sieht dann so aus
PHP:
$zerlegen = end($beitrag);
 

SWFP

SWFP Mitglied

AW: Nur die letzte Variable eines foreach-Arrays ausgeben

Das funktioniert bei mir nicht. Entweder kommt nichts raus oder, wenn ich etwas rumprobiere gibt er mir das erste Wort aus.
 

fakerer

Aktives Mitglied

AW: Nur die letzte Variable eines foreach-Arrays ausgeben

PHP:
$array = array('a','b','c');
echo end($array);
gibt wunderbar das c aus
 

SWFP

SWFP Mitglied

AW: Nur die letzte Variable eines foreach-Arrays ausgeben

ich habe dich

Code:
$beitrag = file("home_de.txt"); 
krsort($beitrag); 

foreach($beitrag as $ausgabe) 
   { 
   $ausgabe = stripslashes($ausgabe); 
   $zerlegen = explode("|", $ausgabe);

Wie muss das jetzt aussehen?
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.565
Beiträge
1.538.067
Mitglieder
67.488
Neuestes Mitglied
Andrew56524
Oben