За последние 24 часа нас посетили 31979 программистов и 1380 роботов. Сейчас ищут 920 программистов ...

Слияние двух массивов

Тема в разделе "Прочие вопросы по PHP", создана пользователем R22, 24 мар 2008.

  1. sword dancer

    sword dancer Активный пользователь

    С нами с:
    17 фев 2008
    Сообщения:
    295
    Симпатии:
    0
    нет, конечно. впрочем, я тут искуственный интеллект недано выкладывал - можешь допилить его, чтобы угадывал, как нужно "складывать" массивы... :)
     
  2. R22

    R22 Активный пользователь

    С нами с:
    24 мар 2008
    Сообщения:
    78
    Симпатии:
    0
    Адрес:
    Odessa
    Спасибо за ответ. Если не секрет, на хрена тебе тогда php для целей искусственного интелекта? Буду "допиливать" твоего робота Вертера.
     
  3. topas

    topas Активный пользователь

    С нами с:
    16 авг 2006
    Сообщения:
    2.258
    Симпатии:
    36
    R22
    Вы лучше попробуйте сформулировать задачу иначе, тогда может и люди потянутся... а не только ИИ :)
     
  4. R22

    R22 Активный пользователь

    С нами с:
    24 мар 2008
    Сообщения:
    78
    Симпатии:
    0
    Адрес:
    Odessa
    Извините, может сильно нервный.
    Задача такая: сложить два многомерных массива, по способу, изложенному выше.
    Как и почему пришел к складыванию таких массивов, говорить не хочу (работаю не один). Хочется сделать с помощью стандартных функций php, а не методом ручного складывания по индексам.
    Спасибо всем.
     
  5. sword dancer

    sword dancer Активный пользователь

    С нами с:
    17 фев 2008
    Сообщения:
    295
    Симпатии:
    0
    ну тогда и мы тебе ничего не скажем, ибо нас много и имя нам - легион! :)
     
  6. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    Я так понял R22 нужно слить массивы так, чтобы получить в результирующем массиве в третьем "измерении" сумму значений третьего измерения исходного массива.
     
  7. R22

    R22 Активный пользователь

    С нами с:
    24 мар 2008
    Сообщения:
    78
    Симпатии:
    0
    Адрес:
    Odessa
    Да все правильно, и мы столкнулись с тем, что с помощью стандартных функций этого сделать невозможно. Пришлось выходить из ситуации кодом типа этого:

    while (list($key, $val) = each($three_days)) {
    $data_array[$key] = $val[email];
    $data_array[$key][three_days] = $val[three_days]; и т.д.
    }

    Такое решение не устраивает, ведь сложение массивов сильно изменилось за эволюцию php. С помощью стандартных функций хотелось решить эту проблему, т.к. по моей логике применение стандартных функций продлит время существования программы.
     
  8. armadillo

    armadillo Активный пользователь

    С нами с:
    6 апр 2007
    Сообщения:
    2.380
    Симпатии:
    0
    Адрес:
    Russia, Moscow
    ыы? можно описать эту логику?
     
  9. dAllonE

    dAllonE Guest

    armadillo, наверное имеется в виду, что увидев стандартную функцию посторонний кодер либо будет ее знать, либо залезет в ман и посмотрит.
    А увидев нечто загадочное почешет затылок и перепишет по новой...
     
  10. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    R22
    На самом деле, как раз вручную написаные функции живут дольше, т.к. работа встроенных функций может меняться от версии к версии (таких изменений в работе встроеных функций 4 и 5 версии великое множество). Используемые вами while и each как раз едва ли когда изменятся :)
    К тому же такой встроенной функции нет (или я тоже не нашёл).
     
  11. R22

    R22 Активный пользователь

    С нами с:
    24 мар 2008
    Сообщения:
    78
    Симпатии:
    0
    Адрес:
    Odessa
    Логика такая:
    в php5 появилась функция, которая из строки делает массив, раньше (да и сейчас) массив из строки делался простым приравниванием. Для чего ее ввели разработчики не буду дурить голову ни себе ни вам. Но применять на данный момент лучше эту стандартную функцию.

    Второе, возьмите версии mysql и бардак который может возникнуть в коде, если хостер поменяет версию сервера и при этом Вы любите использовать гибкость mysql.

    Третье: код работает быстрее и читается лучше, как заметил dAllonE.

    Вот и вся логика.

    Скорее всего, я сильно придираюсь, и наверное тему следует закрыть, наслаждаясь "нестандартным решением".
     
  12. R22

    R22 Активный пользователь

    С нами с:
    24 мар 2008
    Сообщения:
    78
    Симпатии:
    0
    Адрес:
    Odessa
    Спасибо за поддержку. (Прочитал твое сообщение после отсылки своего).
     
  13. sword dancer

    sword dancer Активный пользователь

    С нами с:
    17 фев 2008
    Сообщения:
    295
    Симпатии:
    0
     
  14. R22

    R22 Активный пользователь

    С нами с:
    24 мар 2008
    Сообщения:
    78
    Симпатии:
    0
    Адрес:
    Odessa
    sword dancer
    Давай в следующий раз буду писать подробнее. А на этот раз тему закроем.