1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Баг с кодировкой и только

Тема в разделе "Оффтопик", создана пользователем Mr.Epic, 30 апр 2015.

  1. Автор темы
    Mr.Epic

    Mr.Epic Старожил Пользователь

    Баллы:
    103
    Писал скрипт и нашёл баг, при котором html код превращается вот в это:
    [​IMG]
    Чем больше html тем больше символом.
    PHP 5.4
    Вот код:

    PHP:
    <?php
    Class test{
        public function 
    test(){
            
    $cfg = array('name'=>'текст на русском');
            return 
    $cfg['name'][0];
        }
    }
    $test = new test($cfg);
    ?>
    <p>1</p>
    <p>2</p>
    <p>3</p>
    <p>4</p>
    <div>
        <?php echo $test->test() ?>
    </div>
     
  2. ImAlive

    ImAlive Старожил Пользователь

    Баллы:
    123
    Skype:
    makcvsdog
    return $cfg['name'][0]; -> return $cfg['name']; или return $cfg[0];
    Ты пытаешься использовать обычный массив как многомерный.
    Хотя ошибка мб не из-за этого, мб даже из-за кодировки.
     
  3. Max_Hock

    Max_Hock Участник

    Баллы:
    31
    Имя в Minecraft:
    Max_Hock
    У тебя проблема с кодировкой
     
  4. andrew_houp

    andrew_houp Активный участник Пользователь

    Баллы:
    63
    Имя в Minecraft:
    cube
    http://2cyr.com/decode/?lang=ru
    юзай автоопределение и смотри в каком месте кодировка поменена
    по поводу кода:
    Код:
            $cfg = array('name'=>array('текст на русском'));
            return $cfg['name'][0];
    или
            $cfg = array('name'=>'текст на русском');
            return $cfg['name'];
    или если нужен определенный символ строки то
            $cfg = array('name'=>'текст на русском');
            return substr($cfg['name'], 0, 1);
     
    Последнее редактирование: 30 апр 2015
  5. saharin94

    saharin94 Старожил Пользователь Заблокирован

    Баллы:
    173
    1. Почему return $cfg['name'][0], а не $cfg['name']?
    2. Смотрите в какой кодировке открывается страница (см. http-заголовок Content-Type).
    3. Какая кодировка файла?
     
  6. Автор темы
    Mr.Epic

    Mr.Epic Старожил Пользователь

    Баллы:
    103
    И правда ,проблема в кодировки, браузер сам определяет и использует какую-то левую кодировку..
     
  7. saharin94

    saharin94 Старожил Пользователь Заблокирован

    Баллы:
    173
    В настройках веб-морды пропишите кодировку, чтобы не было таких проблем.
     

Поделиться этой страницей