помогите обработать массив

Тема в разделе "Как сделать...", создана пользователем cebep, 5 июн 2010.

Статус темы:
Закрыта.
  1. cebep

    cebep Постоялец

    Регистр.:
    27 июл 2006
    Сообщения:
    62
    Симпатии:
    2
    доброе утро!
    столкнулся с проблемой :)
    не получается никак придумать, как разобраться с подобным массивом

    Код:
    array (
      'Tmb1_0' =>
      array (
        'name' => 'Tmb1_0.jpg',
        'type' => 'image/jpeg',
        'tmp_name' => '/private/var/tmp/phpsH4wfC',
        'error' => 0,
        'size' => 8522,
      ),
      'Tmb3_0' =>
      array (
        'name' => 'Tmb3_0.jpg',
        'type' => 'image/jpeg',
        'tmp_name' => '/private/var/tmp/phpd9fqxy',
        'error' => 0,
        'size' => 3445,
      ),
      'Tmb2_0' =>
      array (
        'name' => 'Tmb2_0.jpg',
        'type' => 'image/jpeg',
        'tmp_name' => '/private/var/tmp/php3ivKVK',
        'error' => 0,
        'size' => 1782,
      ),
      'Tmb1_1' =>
      array (
        'name' => 'Tmb1_1.jpg',
        'type' => 'image/jpeg',
        'tmp_name' => '/private/var/tmp/phpgArs7y',
        'error' => 0,
        'size' => 10458,
      ),
      'Tmb3_1' =>
      array (
        'name' => 'Tmb3_1.jpg',
        'type' => 'image/jpeg',
        'tmp_name' => '/private/var/tmp/phpysPn5z',
        'error' => 0,
        'size' => 4453,
      ),
      'Tmb2_1' =>
      array (
        'name' => 'Tmb2_1.jpg',
        'type' => 'image/jpeg',
        'tmp_name' => '/private/var/tmp/phpBOgldI',
        'error' => 0,
        'size' => 2522,
      ),
      'Tmb1_2' =>
      array (
        'name' => 'Tmb1_2.jpg',
        'type' => 'image/jpeg',
        'tmp_name' => '/private/var/tmp/phpM8VeEA',
        'error' => 0,
        'size' => 44026,
      ),
      'Tmb3_2' =>
      array (
        'name' => 'Tmb3_2.jpg',
        'type' => 'image/jpeg',
        'tmp_name' => '/private/var/tmp/php9qrrt4',
        'error' => 0,
        'size' => 3799,
      ),
      'Tmb2_2' =>
      array (
        'name' => 'Tmb2_2.jpg',
        'type' => 'image/jpeg',
        'tmp_name' => '/private/var/tmp/php8v6Iag',
        'error' => 0,
        'size' => 1884,
      ),
      'Tmb1_3' =>
      array (
        'name' => 'Tmb1_3.jpg',
        'type' => 'image/jpeg',
        'tmp_name' => '/private/var/tmp/phpP1ctxm',
        'error' => 0,
        'size' => 56916,
      ),
      'Tmb3_3' =>
      array (
        'name' => 'Tmb3_3.jpg',
        'type' => 'image/jpeg',
        'tmp_name' => '/private/var/tmp/phpzhK60X',
        'error' => 0,
        'size' => 5156,
      ),
      'Tmb2_3' =>
      array (
        'name' => 'Tmb2_3.jpg',
        'type' => 'image/jpeg',
        'tmp_name' => '/private/var/tmp/php3113W5',
        'error' => 0,
        'size' => 2535,
      ),
      'Tmb1_4' =>
      array (
        'name' => 'Tmb1_4.jpg',
        'type' => 'image/jpeg',
        'tmp_name' => '/private/var/tmp/phpXd1Buu',
        'error' => 0,
        'size' => 28246,
      ),
      'Tmb3_4' =>
      array (
        'name' => 'Tmb3_4.jpg',
        'type' => 'image/jpeg',
        'tmp_name' => '/private/var/tmp/php1Oj6Jc',
        'error' => 0,
        'size' => 4186,
      ),
      'Tmb2_4' =>
      array (
        'name' => 'Tmb2_4.jpg',
        'type' => 'image/jpeg',
        'tmp_name' => '/private/var/tmp/phpEHEiPd',
        'error' => 0,
        'size' => 2027,
      ),
      'Tmb1_5' =>
      array (
        'name' => 'Tmb1_5.jpg',
        'type' => 'image/jpeg',
        'tmp_name' => '/private/var/tmp/phppKPBA8',
        'error' => 0,
        'size' => 51339,
      ),
      'Tmb3_5' =>
      array (
        'name' => 'Tmb3_5.jpg',
        'type' => 'image/jpeg',
        'tmp_name' => '/private/var/tmp/phpvRVLO8',
        'error' => 0,
        'size' => 5364,
      ),
      'Tmb2_5' =>
      array (
        'name' => 'Tmb2_5.jpg',
        'type' => 'image/jpeg',
        'tmp_name' => '/private/var/tmp/php2YbN98',
        'error' => 0,
        'size' => 2696,
      ),
      'Tmb1_6' =>
      array (
        'name' => 'Tmb1_6.jpg',
        'type' => 'image/jpeg',
        'tmp_name' => '/private/var/tmp/phpi7QX6S',
        'error' => 0,
        'size' => 47683,
      ),
    )
    где первая цифра, после Tmb, вариант фотографии
    0 - оригинал
    1 - уменьшенная копия для просмотра на сайте
    2 - тумбочка
    3 - тумбочка

    вторая цифра, после _, номер фотографии

    нужно как-то из этого массива получать фотографию + все варианты к ней с tmp_name, для того, чтоб присвоить ем правильные имена и положить в нужную папку.

    и так, по всему массиву, количество может быть неограниченным :)
     
  2. Кристя

    Кристя Постоялец

    Регистр.:
    11 май 2007
    Сообщения:
    69
    Симпатии:
    5
    PHP:
    $array = array(); // наш массив
    $photo_id 3// номер фотографии которую надо получить
    $photo_ar = array(); // в нем будет инфа по фото с этим id

    for($i=0; $<4$i++) {
        
    $index "Tmb" $i "_" $photo_id;
        
    $photo_ar[$i] = $array[$index];
    }

    var_dump($photo_ar);

    Если я вас правильно поняла.
     
    cebep нравится это.
  3. cebep

    cebep Постоялец

    Регистр.:
    27 июл 2006
    Сообщения:
    62
    Симпатии:
    2
    подобное я писал, но не смог продвинуться далее

    а точнее, это получить первую фотографию и все варианты к ней, обработать и, если больше у этой фото нет вариантов, приняться за следующую фотографию

    и так, пока фотки в массиве не кончатся
     
  4. Miraage

    Miraage Angular/Laravel

    Регистр.:
    3 июн 2008
    Сообщения:
    230
    Симпатии:
    51
    а можно как-то более популярно объяснить, что вы хотите?
     
  5. diavolic

    diavolic

    Регистр.:
    17 мар 2010
    Сообщения:
    522
    Симпатии:
    102
    если правильно понял то копай вот в эту сторону:


    PHP:
    move_uploaded_file($_FILES['picture['.$index.']']['tmp_name'], $store_path."/".$_FILES['picture['.$index.']['name']);
     
  6. cebep

    cebep Постоялец

    Регистр.:
    27 июл 2006
    Сообщения:
    62
    Симпатии:
    2
    всем спасибо за помощь
    скрипт написан :)
    тему можно закрыть
     
Статус темы:
Закрыта.