Оказываеццо, в клятом PHP перед конструкцией php session_start() не может стоять ничего, что идет на выдачу. Это значит, что такая конструкция может быть только в файле с не-UTF кодировкой. Мерзость какая...
Ты не прав :) 1. При чем здесь UTF-8 кодировка? Если ты имеешь в виду UTF BOM signature, то эта приблуда исключительно для тупых редакторов, которые не могут самостоятельно определить юникодную кодировку в файле. 2. session_start посылает http header, так что естественно, что он должен стоять до вывода данных. Однако это ограничение (не PHP, а HTTP) легко обходится буферизацией вывода, так что можно подсовывать несчастному веб-серверу файлы с юникодной подписью:) 3. Поскольку заголовки могут идти в любом порядке (за исключением кода ответа, естественно), то перед session_start может идти header & set_cookie
В дримвивере это однозначно настраивается. Про фронтпейдж не знаю. Самое простое - вставить в .htaccess строки php_value output_buffering 4096 php_flag output_buffering On
Серьёзные пацаны на PHP пишут только код (соотв., кроме ANSI тебе ничего не надо), а html и строки выносят отдельно, засасывая их через какой-нибудь template engine. Для чего это делается? (1) html пишут дизайнеры, которые программировать не умеют, (2) тебе всё равно нужны будут templates для многоязыковой поддержки, скинов, для внедрения твоего движка в другие сайты и т.п.
Ты дизайнер и программист в одном лице, соотв., редкий клиент, тебе не угодишь ;)
я так и сделал, так что я, похоже, серьезный пацан :)
нет, но каковы грабли. в плане языка всё более-менее понятно, обилие баксов даже придает некоторую позитивненькую зелененькую энергетику этому всему, бугаа :) но всякие вот такие мелочи...
я так и сделал, так что я, похоже, серьезный пацан :) О! Молодец! А что, таки-да! :)
Баксы мне тоже нравились, это секси. Я думаю, ты бы не столкнулся с этими мелочами, если бы изначально выбрал правильный редактор. Я не видел, чтобы PHP писали в дримвивере, фронтпэйдже или в таком извращении как ноутпад в режиме "save as unicode". Я лично пользовал PhpEd (не путать PhpEdit, который тоже из той же оперы, но другой), потом стал использовать Far Manager + Colorer (плагин, расцвечивающий синтаксис, великая вестчь!). Ещё ребята рекоммендуют Zend Studio - это навороченный редактор. Вообще, навороченный редактор нужен только с одной единственной целью - чтобы у тебя был интегрированный дебаггер. Мне реально это не было нужно никогда, потому что на PHP тебе супер-легко вставить отладочную печать и на втором мониторе ;) нажать F5 (refresh) чтобы посмотреть результат (соответственно, дебаггер тебе нафиг не нужен), а на C++ мне всё равно нужно дебаггать сервис, поэтому я использую внешний текстовый дебаггер (cdb/windbg, kd). Сейчас я в качестве редактора исходников всегда использую Far + Colorer, и, что самое замечательное, он даже не поддерживает save as unicode (и это правильно, нефиг смущать людей лишними фичами ;))
no subject
Date: 2007-05-20 01:37 am (UTC)1. При чем здесь UTF-8 кодировка? Если ты имеешь в виду UTF BOM signature, то эта приблуда исключительно для тупых редакторов, которые не могут самостоятельно определить юникодную кодировку в файле.
2. session_start посылает http header, так что естественно, что он должен стоять до вывода данных. Однако это ограничение (не PHP, а HTTP) легко обходится буферизацией вывода, так что можно подсовывать несчастному веб-серверу файлы с юникодной подписью:)
3. Поскольку заголовки могут идти в любом порядке (за исключением кода ответа, естественно), то перед session_start может идти header & set_cookie
no subject
Date: 2007-05-20 01:53 am (UTC)no subject
Date: 2007-05-20 02:03 am (UTC)Самое простое - вставить в .htaccess строки
php_value output_buffering 4096
php_flag output_buffering On
no subject
Date: 2007-05-20 09:30 am (UTC)no subject
Date: 2007-05-20 09:35 am (UTC)Ты дизайнер и программист в одном лице, соотв., редкий клиент, тебе не угодишь ;)
no subject
Date: 2007-05-20 09:45 am (UTC)нет, но каковы грабли. в плане языка всё более-менее понятно, обилие баксов даже придает некоторую позитивненькую зелененькую энергетику этому всему, бугаа :) но всякие вот такие мелочи...
no subject
Date: 2007-05-20 10:01 am (UTC)О! Молодец! А что, таки-да! :)
Баксы мне тоже нравились, это секси.
Я думаю, ты бы не столкнулся с этими мелочами, если бы изначально выбрал правильный редактор. Я не видел, чтобы PHP писали в дримвивере, фронтпэйдже или в таком извращении как ноутпад в режиме "save as unicode". Я лично пользовал PhpEd (не путать PhpEdit, который тоже из той же оперы, но другой), потом стал использовать Far Manager + Colorer (плагин, расцвечивающий синтаксис, великая вестчь!). Ещё ребята рекоммендуют Zend Studio - это навороченный редактор. Вообще, навороченный редактор нужен только с одной единственной целью - чтобы у тебя был интегрированный дебаггер. Мне реально это не было нужно никогда, потому что на PHP тебе супер-легко вставить отладочную печать и на втором мониторе ;) нажать F5 (refresh) чтобы посмотреть результат (соответственно, дебаггер тебе нафиг не нужен), а на C++ мне всё равно нужно дебаггать сервис, поэтому я использую внешний текстовый дебаггер (cdb/windbg, kd). Сейчас я в качестве редактора исходников всегда использую Far + Colorer, и, что самое замечательное, он даже не поддерживает save as unicode (и это правильно, нефиг смущать людей лишними фичами ;))
no subject
Date: 2007-05-20 11:47 am (UTC)no subject
Date: 2007-05-20 06:19 pm (UTC)