wie oft kommt das vor ??

sorashi

Mitglied
Hi hab mal ne Frage.
Ich lasse sachen in eine Textdatei schreiben. um zu sehen, wie oft auf einen link geklickt wurde.
link1\n
link1\n
link3\n
link2\n
usw.

nun wollte ich wissen, wie man das zählen kann, also wie oft link1 in der textdatei steht und wie oft link2 und link3.

wie macht man das am besten ?
 
deine einträge zählen kannst du so:
PHP:
 function countString($string, $file) {
   $file = join(file($file));
   while(stristr($file, $string)){
     $count++;
     $file = stristr($file, string)
   }
   return $count;
 }

 $wieOft = countString('link1', 'textdat.txt');
vielleicht gehts auch mit einer fertigen funktion, mir ist gerade keine eingefallen. /ungetested/


Einfacher wäre es aber einfach für den ersten link die erste zeile(, für den zweiten die zweite, usw) einer textdatei zu benutzen. Das spart auch Speicherplatz.

Du könntest die Zahl dann jedesmal hochzählen und neu speichern.
 
Um den Code von Brainstrom aufzugreifen:

PHP:
function countString($string, $file) {
  $file = join(file('',$file));
  return (count(explode($string, $file))-1);
}
$wieOft = countString('link1', 'textdat.txt');

Gruß, snuu
 
Zuletzt bearbeitet:
bei beiden sagt er mehr oder weniger das gleiche

Warning: Wrong parameter count for join() in c:\apache\htdocs\vote.php on line 3
0
 
Einfach mal die Funktionsreferenz bemühen ( http://de.php.net/join ) und feststellen, dass join() zwei Parameter erwartet.
PHP:
$file = join("", file($file));
Sollte demnach aus dem Datei-Array einen String ohne weiteres Trennzeichen zwischen den einzelnen Zeilen der Datei zaubern.

Fluke ;)
 
danke..

so wars gedacht, nur hat dieses kleine formular leider keine parameterhilfen wie das hochverehrte phpEdit...

man sollte das einführen! ;-)
 
brÅinstorm: Es reicht ja, wenn man das Prinzip erläutert. Eigentlich wird immer viel zu viel in Form von funktionsfähigen Codeschnipseln vorgekaut. Schließlich kann man auch Algorithmen beschreiben ohne auch nur eine einzige Zeile Code zu tippen. Da man dann aber wohl eh noch die vorgebenen Funktionen liefern müsste, ist's wohl mit einem Codebeispiel wirklich einfacher. Dass so ein Beispiel dann aber Anspruch auf direkte funktionstüchtigkeit haben muss, halte ich für übertrieben.

Mein Beitrag war mehr ein vorsichtiger Wink mit dem Zaunpfahl in Richtung sorashi.

sorashi: Ist in keiner Weise böse gemeint, aber Fehlermeldungen zu analysieren oder auch bei einem Fehler ohne diesen verstanden zu haben mal in die Funktionsreferenz zu gucken, ist gar nicht so schwer. ;)

Fluke
 
Zuletzt bearbeitet:
Hmm, ich zitiere mich mal selber ;):
Original geschrieben von Fluke
Mein Beitrag war mehr ein vorsichtiger Wink mit dem Zaunpfahl in Richtung sorashi.
Alles, was ich danach geschrieben hab, ging in die gleiche Richtung. Hab den Beitrag oben dementsprechend editiert, um weitere Verwirrungen zu vermeiden :-).

Fluke
 
Zuletzt bearbeitet:
Zurück