| (Web-) Design und webbasierte Sprachen Tipps & Tricks, Designabgleich, HTML & Javascript, Flash, ASP, PHP, Perl/CGI... |
Diskussion: Frage: SChleife dauert zu lange im Forum (Web-) Design und webbasierte Sprachen, in der Kategorie Web, Network & Multimedia Palace; Anzeige Code: <?php $file = fopen("bilder.list","r"); $i = 0; while(!feof($puffer)) { $puffer = fgets($file, 200); $gex = explode("|",$puffer); echo('<a href="'); ...
![]() |
| | #1 (permalink) |
| Registriert seit: 24.10.05 ![]() Likes: 0 | Anzeige Code: <?php
$file = fopen("bilder.list","r");
$i = 0;
while(!feof($puffer))
{
$puffer = fgets($file, 200);
$gex = explode("|",$puffer);
echo('<a href="');
echo($gex[$i]);
echo('">Bild ');
echo(" $i<br>");
$i++;
}
?> Warum? EDIT nach einer zeit kommt:Warning: feof(): supplied argument is not a valid stream resource in /home/www/freehosting/32305/htdocs/protect/bilder.php on line 4 Bild 0 |
| | |
| | #2 (permalink) |
| $puffer = fgets($file, 200); wird jedes mal neu in der schleife initialisiert, mit dem selben wert zu deinem edit: $puffer ist beim 1. aufruf noch NULL | |
| | |
| HaBOT | - Anzeige - |
| |
| | #3 (permalink) |
| Themenstarter Registriert seit: 24.10.05 ![]() Likes: 0 | Wie kann ich es am besten beheben??? |
| | |
| | #4 (permalink) |
| vor der schleife das initialisieren oder eine abfrage die das nur beim 1. durchlauf macht. programmieren = logisches kobinieren, konzentrier dich, dann passiert das nicht | |
| | |
| | #5 (permalink) | |
| Themenstarter Registriert seit: 24.10.05 ![]() Likes: 0 | Zitat:
| |
| | |
| | #6 (permalink) |
| bitte gerne, melde dich ruhig wieder wenn du ein problem mit dem alorythmus hast. konzentiert durchgehen und evtl. aufzeichnen so findet man solche fehler | |
| | |
| | #7 (permalink) | |
| Registriert seit: 17.03.04 ![]() Likes: 2 | Zitat:
Es liegt daran, dass feof() ein gültiges Dateihandle braucht und keine Variable!! Also so: PHP-Code: PHP-Code:
__________________ Mfg Basic Avid - Use it or be used! - | |
| | |
| | #8 (permalink) | ||
| [QUOTE] Zitat:
macht das die funktion automatisch? | |||
| | |
| | #9 (permalink) |
| Registriert seit: 17.01.06 ![]() Likes: 0 | $file ist ein pointer auf eine geöffnete datei, und bei funktionen die mit hilfe dieser pointer daten lesen (hier fgets) wird dieser pointer vorwärts geschoben, so das beim nächsten aufruf der funktion ab dieser stelle weiter gelesen wird. wenni ch mich recht erinnere liest fgets so wie es hier aufgerufen wird, die aktuelle zeile bis zum 200. Zeichen, oder wenn vorher ein EOL kommt bis zu diesen. Stell dir vor das File ist ein Buch, und $File ist dein Finger, wenn fgets die sagt: "Gibt mir die nächste Zeile, aber nur bis zu 200 Zeichen" dann liest du dem fgets die Zeile bis zum 200. Zeichen vor, und wartest da mit deinem Finger bis dir wieder was gesagt wird. In diesem Script wird dir immer wieder von fgets das selbe gesagt, und das bis du auf der letzten seite des buches bist. das sieht die Whileabrage dann an deinem Finger, und sagt dir du sollst das Buch zumachen ;-) Grüße phx1024 P.S.: nit falsch verstehen wenn ich das so erkläre, ich verwende nur sehr gern analogien ;-) |
| | |
| | #11 (permalink) | |
| Registriert seit: 17.03.04 ![]() Likes: 2 | Zitat:
__________________ Mfg Basic Avid - Use it or be used! - | |
| | |
| | #12 (permalink) |
| Registriert seit: 17.01.06 ![]() Likes: 0 | Für mich gilt 1 Char = 1 Byte kann sein das das bei Java mit unicode anders ist, und das es bei PHP vieleicht auch Unicode-kram gibt, aber ich progge in C und C++ und da stimmt das, wenn ich nen Zeilenumbruch aus MS-Text hab, ist das enter nu mal 2 Zeichen groß. grüße phx1024 |
| | |
![]() |
| - Anzeige - | |
| |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| [SQL] Abfrage dauert zu lange | MrSpider | Code Kitchen | 4 | 22.08.09 15:05 |
| Hochfahren dauert zu lange | gugugs | Die Problemzone | 32 | 29.03.07 20:46 |
| Reperatur dauert zu lange | MJK | Off topic-Zone | 2 | 02.07.05 00:48 |
| Wie lange dauert es ... | Slude | Internet Allgemein | 2 | 30.06.04 21:45 |
| Runterfahren dauert zu lange | 1093130 | Hardware Probleme | 11 | 23.05.02 00:51 |