Roberts.R Posted April 29, 2009 Report Share Posted April 29, 2009 (edited) Vakardien mazliet testēju $string'us, bet es nezinu, kāpēc man nesanāca, kā tam vajadzētu izskatīties. Kods sekojošs: <?php $string = "Hello \nWorld"; echo $string; ?> un outputs ir prosta šitāds: Hello World - vienā rindā, bez pārnešanās jaunajā rindā. Any suggestions? Edited April 29, 2009 by Roberts.R Quote Link to comment Share on other sites More sharing options...
Aleksejs Posted April 29, 2009 Report Share Posted April 29, 2009 Paņem view source - un ieraudzīsi, ka pārnesums kā tāds tur ir. :) Problēma ir tajā, ka HTMLs newline characteru pēc noklusējuma ignorē. Pamēģini šādi: $string = "<pre>Hello \nWorld</pre>"; echo $string; vai $string = "Hello <br/>World"; echo $string; Quote Link to comment Share on other sites More sharing options...
Roberts.R Posted April 29, 2009 Author Report Share Posted April 29, 2009 Paņem view source - un ieraudzīsi, ka pārnesums kā tāds tur ir. :) Problēma ir tajā, ka HTMLs newline characteru pēc noklusējuma ignorē. Pamēģini šādi:$string = "<pre>Hello \nWorld</pre>"; echo $string; vai $string = "Hello <br/>World"; echo $string; Hmm, tiešām... Sourcē rāda kā sadalītu, bet pašā browzerī ne. un pamēģināju ielikt arī to <pre> tagu, un arī browzerī rādījās kā dalīts divās rindās. Taču lieta tam pre ir tāda, ka viņš fontu maina no defaultā, CSS nekādi nav salikti. Quote Link to comment Share on other sites More sharing options...
Aleksejs Posted April 29, 2009 Report Share Posted April 29, 2009 Pieliec stila definīcijai šo: white-space: pre ... un tad elements, kam to pieliki izturēsies pret newliniem tāpat kā <pre> Quote Link to comment Share on other sites More sharing options...
indoom Posted April 29, 2009 Report Share Posted April 29, 2009 pieliec nl2br() <?php $string = nl2br("Hello \nWorld"); echo $string; ?> Quote Link to comment Share on other sites More sharing options...
Roberts.R Posted April 29, 2009 Author Report Share Posted April 29, 2009 Vēl divi jautājumi radās: * apskaidrojiet lūdzu, ko īsti nozīmē "newlines". * vai tiešām vajadzētu būt tādai problēmai, ja es lietoju PHP Version 5.2.9-2 un vēl plusā jālieto kaut kādi īpaši kodi, lai, tik parasta funkcija kā break, darbotos... Quote Link to comment Share on other sites More sharing options...
Mr.Key Posted April 29, 2009 Report Share Posted April 29, 2009 (edited) tā nav funkcija break, bet kas attiecas uz jautājumu - nu vēsturiski sanācis, ka parasti htmls visas atstarpes reducē uz vienu atstarpi. ja grib vairākas, jāizmanto " ". ps newline -> new line -> pārnesums jaunā rindā.. sourcē. Tas, kā source tiek attēlota uz ekrāna - tas jau ir cits pasākums. Edited April 29, 2009 by Mr.Key Quote Link to comment Share on other sites More sharing options...
Grey_Wolf Posted April 30, 2009 Report Share Posted April 30, 2009 a kapec spitigi gribi izmantot /n nevis <br> ??? Quote Link to comment Share on other sites More sharing options...
Aleksejs Posted April 30, 2009 Report Share Posted April 30, 2009 Ar newline domāts pārnesums jaunā rindā. Unix vidē tas ir viens simbols \n, bet Windows vidē divu simbolu kombinācija \r\n. Ja pareizi atceros, tad Macintosh datoros (pirms pāriešanas uz unixisko osx) bija šī kombinācija otrādi \n\r. Tas, ka PHP attēlo simbolu \n kā simbolu \n ir lieliski, jo ko gan citu būtu jāattēlo? Atkarībā no HTML versijas pārnesuma attēlošanas simbols ir <br> vai <br/>, taču ja Tev vajadzētu rādīt labojamo tekstu <textarea></textarea> laukā, tad <br> nederētu, jo tur pārnesuma attēlošanai vajag tieši \n. Quote Link to comment Share on other sites More sharing options...
bubu Posted April 30, 2009 Report Share Posted April 30, 2009 Vecajie makiem bija tikai \r. Jaunajiem (macosx) ir tāpat kā *nix'os - \n. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.