Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

php - edit einer gespeicherten seite

Ajax, Hijax, Microformats, RDF, Markup, HTML, PHP, CSS, MySQL, htaccess, robots.txt, CGI, Java, Javascript usw.
Neues Thema Antworten
barry123
PostRank 3
PostRank 3
Beiträge: 70
Registriert: 26.06.2007, 23:19
Wohnort: münchen

Beitrag von barry123 » 26.12.2008, 01:34

hallo habe folgendes problem und bitte um eure unterstuetzung.
habe im cacheordner gespeicherte files. die will ich jetzt aendern bzw nur einen teil rausholen und diese dann im anderen ordner speichern.
will einfach nur platz reduzieren. bitte aber nicht die verwendung einer DB sugerieren.
hier mein codeausschnitt

Code: Alles auswählen

foreach($filelist as $key => $file_mod){ //soll fuer alle im cache befindlichen dateien gelten          
fopen ($file_mod, "a");// oeffnen
$data = file_get_contents($file_mod);//einlesen der Seite

preg_match_all&#40;"/,b&#58;'rlt',tp&#58;'&#40;.+?&#41;'&#125;\&#41;\"&#40;.+?&#41;>&#40;.+?&#41;<\/a><\/div>/", $data, $keywords&#41;;//herholen dessen was ich will

foreach &#40;$keywords&#91;3&#93; as $numword => $outputkeyword&#41;&#123;
    chdir&#40;$cachefolder_mod&#41;;
    $open = fopen &#40;$file_mod, "w"&#41;;//oeffnet die neue &#40;schon im neuen ordner&#41; kw file und ...
    $savekeywords .= str_replace&#40;" ", "-", strip_tags&#40;$outputkeyword."\n"&#41;&#41;;
    fputs&#40;$open, $savekeywords&#41;;//...schreibt die kw's rein &#40;*&#41;
    &#125;
    chdir&#40;$cachefolder&#41;;
&#125;
exit;
(*) und beim naechsten durchlauf der schleife behaelt sie einschliesslich der neuen Kw's.

wie schaffe ich es also nur die aktuell benoetigten kw's in die jeweilige dazugehoerige datei zu speichern nicht aber die mit den davor schon hergeholten und entsprechend schon gespeicherten?

vielen dank fuer eure hilfe :)

Anzeige von ABAKUS

von Anzeige von ABAKUS »

Content Erstellung von ABAKUS Internet Marketing
Ihre Vorteile:
  • einzigartige Texte
  • suchmaschinenoptimierte Inhalte
  • eine sinnvolle Content-Strategie
  • Beratung und Umsetzung
Jetzt anfragen: 0511 / 300325-0

barry123
PostRank 3
PostRank 3
Beiträge: 70
Registriert: 26.06.2007, 23:19
Wohnort: münchen

Beitrag von barry123 » 26.12.2008, 02:39

habe selber nun die loesung gefunden und zerbricht euch nicht mehr den kopf aber danke denjenigen die sich schon die haare aus dem kopf herausgerissen haben.

loesung: unset();



fputs($open, $savekeywords);//...schreibt die kw's rein (*)
}
unset ($savekeywords);
chdir($cachefolder);

Mork vom Ork
PostRank 9
PostRank 9
Beiträge: 2557
Registriert: 08.07.2008, 11:07
Wohnort: Aufm Friedhof.

Beitrag von Mork vom Ork » 27.12.2008, 13:37

barry123 hat geschrieben:loesung: unset();
unset() ist hier fehl am Platz, da du damit die Variable gänzlich löschst und der Anhängeoperator .= somit auf keine Variable mehr zugreifen kann. Nun sieht PHP geflissentlich über diesen (und viele andere) Anfängerfehler hinweg und hinterlässt lediglich eine Warnung, nichtsdestotrotz korrekt wäre schlichtweg, die Variable $savekeywords vor der Schleife zu initialisieren:

Code: Alles auswählen

foreach&#40;$filelist as $key => $file_mod&#41;&#123; //soll fuer alle im cache befindlichen dateien gelten 
    &#91;bla&#93;

    $savekeywords = ""; // Variable initialisieren
    foreach &#40;$keywords&#91;3&#93; as $numword => $outputkeyword&#41; &#123;
        &#91;bla&#93;
        $savekeywords .= str_replace&#40;" ", "-", strip_tags&#40;$outputkeyword."\n"&#41;&#41;;
        fputs&#40;$open, $savekeywords&#41;;//...schreibt die kw's rein &#40;*&#41;
    &#125; 
    chdir&#40;$cachefolder&#41;;
&#125;

Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag