У меня есть сайт для загрузки файлов, у него есть возможность загрузки через URL-адреса, я пытаюсь сделать это, когда пользователь загружает через URL-адрес, я проверяю свою базу данных, если существует файл, который был загружен через тот же URL-адрес, на котором отображается загрузите URL-адрес напрямую, а не загружайте его снова.
Данные, отправляемые в сценарий загрузки, имеют вид массива, например:
Array (
[0] => http://i41.tinypic.com/3342r93.jpg
[1] => http://i41.tinypic.com/28cfub7.jpg
[2] => http://i41.tinypic.com/12dsa32.jpg
)
и массив, используемый для вывода результатов, имеет следующую форму:
Array
(
[0] => Array
(
[id] => 43
[name] => 3342r93.jpg
[size] => 362750
[descr] =>
[password] =>
[delete_id] => 75CE
[upload_id] => 75F45CAE1
)
[1] => Array
(
[id] => 44
[name] => 28cfub7.jpg
[size] => 105544
[descr] =>
[password] =>
[delete_id] => D392
[upload_id] => 6676FD881
)
[2] => Array
(
[id] => 45
[name] => 12dsa32.jpg
[size] => 49000
[descr] =>
[password] =>
[delete_id] => 54C9
[upload_id] => A58614C01
)
)
Теперь я хочу, чтобы, если ссылка http://i41.tinypic.com/28cfub7.jpg уже была загружена, я просто добавляю ее в выходной массив, но сохраняю ее в порядке (если добавленная ссылка была второй в массиве, результат вывода также должен отображаться в 2-й)
Так, какую функцию следует использовать для удаления совпавших URL-адресов из входного массива и функции для добавления его в выходной массив в порядке №
// отредактировано
Да, unset сделает это, но я хочу сохранить порядок:
Например, после сброса массива выглядит так:
Array (
[0] => http://i41.tinypic.com/3342r93.jpg
// [1] was removed
[2] => http://i41.tinypic.com/12dsa32.jpg
)
но выходной массив будет
Array
(
[0] => Array
(
[id] => 43
[name] => 3342r93.jpg
[size] => 362750
[descr] =>
[password] =>
[delete_id] => 75CE
[upload_id] => 75F45CAE1
)
// this will become [1], so how can i add another output[1] and shift other
// items after it to [2], [3] and so on...
[1] => Array
(
[id] => 45
[name] => 12dsa32.jpg
[size] => 49000
[descr] =>
[password] =>
[delete_id] => 54C9
[upload_id] => A58614C01
)
)