![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 707 Pomógł: 266 Dołączył: 3.07.2012 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Stosunkowo często używam Content-Type: text/plain, głównie dla moich własnych narzędzi. Tak się zastanawiam - czy jest jakiś standard jaki powinien być znak nowej linii dla zwykłego tekstu wysyłanego do przeglądarki? Jak jeszcze byłem lamusem, używałem do tego celu PHP_EOL, co jest absolutną bzdurą, bo przecież odpowiedź do przeglądarki nie ma nic wspólnego z systemem używanym na serwerze. Teraz używam \n, ale być może jakieś standardy zalecają \r\n?
Oczywiście działa jedno i drugie. Pytam jako pedant. (IMG:style_emoticons/default/smile.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 885 Pomógł: 463 Dołączył: 3.10.2009 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Abstrahując od tego, że pytanie jest źle postawione, ponieważ plain text wcale nie musi zawierać znaków kontrolnych, aby spełniał definicję plain-textu
Cytat It may also include a limited number of characters that control simple arrangement of text, such as line breaks or tabulation characters. [źródło:] https://en.wikipedia.org/wiki/Plain_text czyli - może, ale nie musi zawierać (IMG:style_emoticons/default/oneeyedsmiley02.png) Zarówno sposób zapisu, jak i interpretacji tego znaku zależy od użytego standardu kodowania (znaków). I właśnie te standardy opisują, jakiej sekwencji należy użyć, aby znak nowej linii był poprawnie interpretowany. Podsumowując: nie ma jednej, jednolitej interpretacji, która obowiązuje wszędzie, natomiast są odpowiednie standardy dotyczące poprawnego kodowania znaków. Tabela reprezentacji znaków, akapit: Cytat Representations in different character encoding specifications https://en.wikipedia.org/wiki/Newline Jak widać, inaczej jest to zapisane w ASCII, inaczej w Unicode, jeszcze inaczej interpretują np. 8-bitowe Atari czy ZX Spectrum (IMG:style_emoticons/default/zakochany.gif) (IMG:style_emoticons/default/sekret.gif) Można to porównać do np. języków europejskich, gdzie piwo to zarówno beer, jak i: cerveza, pivo, piwo, μπυρα, alut, öl itd. itp. W zależności od kraju, w którym się znajdujesz - chodzi o to, żeby kupić piwo, a jak to zapisać to już jest sprawa wtórna i zmartwienie spragnionego melanżownika. Pani w sklepie zrozumie (IMG:style_emoticons/default/smile.gif) |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 707 Pomógł: 266 Dołączył: 3.07.2012 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Abstrahując od tego, że pytanie jest źle postawione, ponieważ plain text wcale nie musi zawierać znaków kontrolnych, aby spełniał definicję plain-textu To co piszesz jest nielogiczne. Co to ma w ogóle do rzeczy, że nie musi zawierać? Pytam czy jest jakiś standard zapisu znaku nowej linii. Ktoś, kto sztywno trzyma się zasad, teoretycznie mógłby inaczej wtedy zinterpretować niewłaściwy znak nowej linii, czyli na przykład nie wyświetlić wcale przejścia do nowej linii (jeśli standard to \r\n, a my użyjemy \n) lub wyświetlić jakiś babolek (w odwrotnej sytuacji). Jeśli jest tak, że nie ma na to standardu i plain text to wolna amerykanka, to jest to odpowiedź na moje pytanie, a nie źle postawione pytanie. Jeśli pytam czy kwiaty należy podlewać wodą źródlaną czy mineralną, a odpowiedź to "obojętnie, bo obie identycznie spełnią swoje zadanie", to pytanie nie jest źle postawione. Nielogiczna jest Twoja odpowiedź, bo przeglądarka to bardzo specyficzny twór i niekoniecznie musi odzwierciedlać system, na którym siedzi. Może mieć własne, ustalone przez W3C czy innego czorta, standardy. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 16.10.2025 - 18:14 |