Zum Inhalt springen

PHP StringVariablen


Empfohlene Beiträge

Hi Leute,

ich habe ein Programm in dem ich eine String Variable immer wieder verlängere.

immer schön nach dem ...

$var .= "noch mehr text";

... Prinzip. Nun bin ich an einer stelle angelangt wo ich denke das der Internetexplorer nicht mehr mitkommt da die Stringvariable zu "lang" wird. Weiss jemand die Maximale länge einer Stringvariable?

Wie könnte ich eine Stringvariable "länger machen"?

viele grüße

kills

--------------------

PS:

Es besteht nicht die möglichkeit einfach weniger text in die variable zu schreiben, da das schon aufs äußerste optimiert ist!

Link zu diesem Kommentar
Auf anderen Seiten teilen

also ich denke das der internetexplorer das nicht packt weil...

wenn ich das script anwerfe und will 1nen Monat darstellen funzt es 100%

bei 2..11 ebenfalls...

nun wenn ich 12monate habe wird die folgender fehler angezeigt:

(in diesem fall ist die variable ca. 16MB groß)

##################

Die Seite kann nicht angezeigt werden.

Die gewünschte Seite kann nicht angezeigt werden.

--------------------------------------------------------------------------------

Versuchen Sie Folgendes:

Öffnen Sie die messer-Homepage, und suchen Sie dann nach Links zu den gewünschten Informationen.

Klicken Sie auf Aktualisieren oder wiederholen Sie den Vorgang später.

Klicken Sie auf Suchen, um nach Informationen im Internet zu suchen.

Sie können auch eine Liste verwandter Sites anzeigen.

HTTP 500 - Interner Serverfehler

Internet Explorer

######################

----------

ich lasse eine while-schleife durchlaufen und verlängere den string dann bei jedem durchgang...

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von kills

warum verschoben?

ich hatte den thread doch im webdesign angelegt.

Und da ist er falsch ;)

Webdesign ist alles was Clientseitig abläuft, also HTML, Javascript usw...

Webserverprogrammierung ist alles was auf dem Server abläuft, also PHP, ASP, Perl oder Phyton... Steht ja auch so in der Forenbeschreibung ;)

Noch zu deinem Problem:

Original geschrieben von kills

nun wenn ich 12monate habe wird die folgender fehler angezeigt:

(in diesem fall ist die variable ca. 16MB groß)

In der php.ini wird der Speicher pro Prozess begrenzt, wie Jaraz oben schon geschrieben hat. Standardmäßig sind da 8 MB eingetragen. Falls du Zugriff auf die php.ini hast, kannst du mal versuchen diesen Wert zu erhöhen. Hab leider gerade keinen Rechner mit PHP hier und kann nicht nachschauen, wie der Wert genau heißt, sollte aber auch so zu finden sein.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von kills

Die Seite kann nicht angezeigt werden.

Die gewünschte Seite kann nicht angezeigt werden.

Hmmm, das hat mit Deiner Variable IMHO recht wenig zu tun. Diese Meldung bekommst Du, wenn Du das eingestellte Zeitlimit auf Deinem Webserver überschreitest.

Schau mal nach, was in Deiner httpd.conf als Timeout eingetragen ist. Dauert die Ausführung Deines Skripts bei 12 Monaten wesentlich länger als die Ausführung bei 11 Monaten? Dann liegt die Vermutung nahe, dass Du irgendwo 'nen Loop gebastelt hast! ;)

ICQ

Link zu diesem Kommentar
Auf anderen Seiten teilen

Eine Loop benutzt er ja auch, nur könnte es tatsächlich sein das diese "endless" ist :)

Evtl mal den Code posten?

Übrigens ICQ das Timeout stellt man doch in der php.ini ein und nicht beim Apachen?

Oder da nochmal extra?


max_execution_time = 300     

; Maximum execution time of each script, in seconds

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von Spike

Eine Loop benutzt er ja auch, nur könnte es tatsächlich sein das diese "endless" ist :)

Yep, so war's gemeint! :D

Original geschrieben von Spike

Übrigens ICQ das Timeout stellt man doch in der php.ini ein und nicht beim Apachen?

Oder da nochmal extra?

Hmmm, wir hatten hier das gleiche Problem, und wir haben (jetzt wo Du's sagst, fällt's mir auch wieder ein ;)) das in beiden geändert. Macht ja auch Sinn, denn wenn Du in der php.ini 'nen Timeout von 10 Minuten setzt und beim Indianer eine von 30 Sec, dann bringt das wohl nicht wirklich viel, oder? :D

ICQ

Link zu diesem Kommentar
Auf anderen Seiten teilen

hi leute,

also ich habe sicher kein endless loop gebaut!!

ein server timeout ist es sicher auch nicht da der bei 60 sek liegt (serverseitig und php seitig)

ich werde mal die maximale größe des scripts erhöhen( ich hab zugriff auf die php ini!)

danke für die antworten

gruss,

kills

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von jomama

Mal ne ganz doofe Frage. Wie willst du den User dazu kriegen, eine Ewigkeit zu warten, bis er deine 16Mb runtergeladen hat? Da hätt ich die Seite schon lägst wieder geschlossen.

Ich vermute jetzt mal, dass die Seite im Intranet angezeigt werden soll. Gesetzt dem Fall die Firma verfügt über ein 10 Mbit-Netzwerk werden nach meiner Rechnung 1,25 MB/Sec. übertragen. Das heisst eine Seite dauert ca. 16 Sekunden, bis sie aufgebaut wird. Und 16 Sekunden wartet (nach einer Vorwarnung) wohl jeder User. ;)

ICQ

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dann ist das was anderes.

Apropos(haut mich, wenn ich Blödsin rede), der Server Timeout bestimmt die maximale Übertragungsdauer, der PHP Timeout die maximale Zeit zur ausführung eines Scripts.

Ich glaub aber irgendwie, bei nem 16MB String leidet die Übersichtlichkeit, aber du wirst schon wissen, was du tust.

Kannst du den String nicht in ein Array packen und dann mit foreach ausgeben? Das wäre imho stylischer.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...