När man använder en textruta med html-taggen <textarea> och sedan använder ett PHP script för att hantera texten så händer det att radbrytningarna försvinner när man skickar tillbaka texten till webbläsaren. Till exempel om man skriver:

Textrad 1

Textrad 2

Textrad 3

Så får man:

Textrad 1Textrad 2Textrad 3

Detta händer för att radbrytningar i en <textarea> representeras ofta av tecknena \r\n. Anledning till att radbrytningar för text i en textarea representeras på det här sättet är för pågrund av de standarder som finns för att skicka text på internet och allmän men vanlig flummighet kring webbteknikers standarder.

I vilket fall som helst så löser man problemet enklast genom att använda PHP-funktionen nl2br(). När man anger sin text som argument i denna funktion så lägger funktionen in en <br /> framför alla radbrytningar och då blir utskriften av radbryningar korrekt.

&-tecknet i PHP

February 23rd, 2010 | Posted by admin in Webbutveckling - (0 Comments)

När jag läser PHP-tutorials där det används objektorienterade programmeringsexempel så ser jag ofta kodstycken som innehåller termen: “&amp;”. Vilket förvirrade mig väldigt mycket i början.

Det visade sig att &amp; bara var ett “tryckfel”. &amp; används i HTML och betyder samma sak som & (ampersand). Det är ett säkrare sätt att skriva &. Så när man skriver & i en text som till exempel ska lagras i en databas så burkar man omvandla & till den säkrare formen &amp;. Problemet i de tutorials jag har läst har varit att när de läser in texten från databasen så har de alltid missat att omvandla &amp; tillbaka till &, vilket skapat förvirring. Se följande exempel:

$this->$model =&amp; new $model; //Exempel med tryckfel

$this->$model =& new $model; //Hur det egentligen ska se ut

Och i detta sammanhand betyder & att objektet ska skapas genom referens (kommer ursprungligen från C).