aasahMedlem sedan mars 20034 471 inlägg Hur fungerar PHP:s strängkonkatinering egentligen? Är PHP:s '.' mest lik Javas '+' mellan 'String':ar eller Javas 'append' för 'StringBuffer'?
Många gånger skulle det vara smart att kunna lagra allt innehåll i en webbsida i en variabel vilken skrivs ut när allt innehåll genererats. På så sätt kan man enkelt skicka iväg användaren till ett felmeddelande om det uppstår problem under gång. Men då konkatineras ju rejäla mängder strängar med varann. Hur effektivt blir det egentligen? :q Är det skillnad i effektivitet mellan att konkatinera stora textmängder först och skriva ut allt på en gång, eller att skriva ut varje del för sig?
Behöver man bry sig om den ev skillnaden så länge ens sidor inte liknar romaner?
aasah skrev:
Behöver man bry sig om den ev skillnaden så länge ens sidor inte liknar romaner?
Det tror jag knappast, jag har aldrig noterat någon skillnad i alla fall.
stevenetMedlem sedan juni 20001 251 inlägg Jag tror snarare att det är oftast är dumt att lagra hela sidan i en variabel, såvida man inte vill uppnå effekten för t.ex. felhantering eller caching. Detta kan lösas med http://se.php.net/ob_get_contents
TroxyMedlem sedan mars 20041 505 inlägg
aasah skrev:
Många gånger skulle det vara smart att kunna lagra allt innehåll i en webbsida i en variabel vilken skrivs ut när allt innehåll genererats. På så sätt kan man enkelt skicka iväg användaren till ett felmeddelande om det uppstår problem under gång.
Det låter som du försöker uppfinna hjulet på nytt. Det finns redan en sak som gör detta, nämligen Output Buffering.
Om du använder dig av buffering så väntar servern med att skicka innehållet tills dess att php-koden har körts igenom.
Skriv helt enkelt ob_start() längst upp i koden.
Om du under körning skulle få problem så kan du slänga bort allt innehåll med hjälp av bla. ob_clean() och sedan visa ett felmeddelande eller vad du vill.
Läs mer i php-manualen:
http://se2.php.net/manual/en/function.ob-start.php