Задать вопрос
Ответы пользователя по тегу PHP
  • Как разбить многомерный массив на множество одномерных?

    irostovtsev
    @irostovtsev
    Просто попробуйте сохранить подмассивы, используя переменные переменных.

    Ваш массив:

    $arrays = Array (
      '0' => Array (
          '0' => 'Вася',
          '1' => 'Петя',
          '2' => 'Саня'
      ),
      '1' => Array (
          '0' => '16',
          '1' => '25',
          '2' => '55'
      ),
      '2' => Array (
          '0' => 'школьник',
          '1' => 'программист',
          '2' => 'инженер'
      )
    );


    Код цикла:
    foreach ($arrays as $i =>$array) {
        ${"array{$i}"} = $array; 
    }


    Как результат, в данном случае сформируются 3 переменные: $array0, $array1, $array2, которые и будут содержать Ваши подмассивы изначального многомерного массива.

    Результат:

    Array
    (
        [0] => Вася
        [1] => Петя
        [2] => Саня
    )
    Array
    (
        [0] => 16
        [1] => 25
        [2] => 55
    )
    Array
    (
        [0] => школьник
        [1] => программист
        [2] => инженер
    )


    Пример онлайн
    Ответ написан
    2 комментария
  • Почему не работает php код?

    irostovtsev
    @irostovtsev
    Чтобы проверить Ваш код, сделайте просто
    var_dump($_GET);
    Посмотрите, есть ли в массиве вообще что-нибудь.

    Если на выходе будет array(0) { } или массив не будет содержать ваших ключей, тогда начинать разбираться нужно будет с момента посыла данных.

    Проверьте, может быть, как часто это бывает, Вы путаете $_GET и $_POST методы.
    Ответ написан
    Комментировать
  • Почему setlocale() и parse_url() портят кодировку IDNA на Mac OSX?

    irostovtsev
    @irostovtsev
    В php.ini есть директива default_charsetПо умолчанию она должна стоять в UTF-8.

    Проверить это можно запустив:

    phpinfo();
    После, поиском найти default_charset и посмотреть тип кодировки.

    Если стандартная кодировка не UTF-8, тогда добавьте в php.ini в самый конец:

    default_charset = "UTF-8"
    После перезапустите httpd сервер, чтобы заново прочитать php.ini

    Дополнительно .htaccess добавьте:
    AddDefaultCharset UTF-8
    В скрипте помимо всего прочего дабавьте:
    putenv( 'LC_ALL=ru_RU.utf8' );
    Ответ написан
  • Как ускорить начало рендеринга страницы?

    irostovtsev
    @irostovtsev
    Вам стоит обратить внимание на headjs.com.

    Для картинок нужно использовать спрайты (sprites), а не отдельные файлы.

    Основная задача, минимизировать запросы к серверу.
    Ответ написан
    Комментировать