Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/15: Рейтинг темы: голосов - 15, средняя оценка - 4.93
5 / 5 / 4
Регистрация: 01.11.2009
Сообщений: 576

Удаление элементов массива в цикле

04.09.2015, 13:26. Показов 3160. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день.
Коллеги, подскажите как решить задачу:
Есть массив с 1000 различных записей - id клиента.
Мне нужно выбрать первые 100 и отправить в файл, потом взять следующие 100 и опять отправить в файл, и так определенное кол-во раз.
Попробовал сделать через array_slice и array_diff, но что -то не получилось, подскажите как правильно написать цикл.
Это просто пример.
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$mar=array('q','w','e','r','t','y','u','i','o','p','a','s','d','f','g','h','j','k','l','z','x','c','v','b','n','m'); 
echo "Исходный массив Mar"."</br>";
print_r($mar);
echo "</br>";
for($i=1;$i<=3;$i++){
$x=array_slice($mar,0,5); /*структура массива: [0] => 3 [1] => 4 [2] => 5 */ 
echo "</br>";
echo "массив X"."</br>";
print_r($x).'</br>'; 
echo "</br>";
$arr=array_diff($mar,$x); 
echo "Массив Arr"."</br>";
print_r($arr);
echo "</br>";
$i;
echo '_________________________________';
}
он выдает следующее:

Исходный массив Mar
Array ( [0] => q [1] => w [2] => e [3] => r [4] => t [5] => y [6] => u [7] => i[8] => o [9] => p [10] => a
[11] => s [12] => d [13] => f [14] => g [15] => h [16] => j [17] => k [18] => l[19] => z [20] => x [21]
=> c [22] => v [23] => b [24] => n [25] => m )
массив X
Array ( [0] => q [1] => w [2] => e [3] => r [4] => t )
Массив Arr
Array ( [5] => y [6] => u [7] => i[8] => o [9] => p [10] => a [11] => s [12] => d [13] => f [14] => g
[15] => h [16] => j [17] => k [18] => l[19] => z [20] => x [21] => c [22] => v [23] => b [24] => n [25]
=> m )
_________________________________
массив X
Array ( [0] => q [1] => w [2] => e [3] => r [4] => t )
Массив Arr
Array ( [5] => y [6] => u [7] => i[8] => o [9] => p [10] => a [11] => s [12] => d [13] => f [14] => g
[15] => h [16] => j [17] => k [18] => l[19] => z [20] => x [21] => c [22] => v [23] => b [24] => n [25]
=> m )
_________________________________
массив X
Array ( [0] => q [1] => w [2] => e [3] => r [4] => t )
Массив Arr
Array ( [5] => y [6] => u [7] => i[8] => o [9] => p [10] => a [11] => s [12] => d [13] => f [14] => g
[15] => h [16] => j [17] => k [18] => l[19] => z [20] => x [21] => c [22] => v [23] => b [24] => n [25]
=> m )

т.е. он на второй итерации берет исходный массив, а должен брать массив Arr, т.е с вырезанными уже записями.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.09.2015, 13:26
Ответы с готовыми решениями:

Одномерные массивы. Вставка, удаление элементов массива. Перестановка элементов массива. Сортировка массива методом пузырька
Помогите пожалуйста! Дан массив, состоящий из N букв латинского алфавита а) Заполнить массив датчиком случайных чисел б)...

Произведение положительных элементов массива, сумма элементов массива, удаление четных элементов
в одномерном массиве состоящим из n элементов вычислить: произведение положительных элементов массива; сумму элементов массива,...

Удаление четных элементов массива,больших среднего арифметического всех элементов массива
Доброго времени суток! Помогите пожалуйста) Вот задание:Из массива удалить четные элементы, имеющие значение больше среднего...

3
Эксперт PHP
 Аватар для Kerry_Jr
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
04.09.2015, 13:44
1.
Цитата Сообщение от Владимир23 Посмотреть сообщение
PHP
1
2
echo "</br>";
$i;
что за $i?
2.
Цитата Сообщение от Владимир23 Посмотреть сообщение
PHP
1
2
3
$arr=array_diff($mar,$x); 
echo "Массив Arr"."</br>";
print_r($arr);
PHP
1
2
3
4
$arr=array_diff($mar,$x); 
echo "Массив Arr"."</br>";
print_r($arr);
$mar = $arr;
0
 Аватар для Lazy_Den
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
04.09.2015, 13:50
PHP
1
2
3
4
5
6
$mar = [ /* массив с N-ым кол-вом элементов */ ];
$parts = array_chunk($mar, 100); // разбиваем на части по 100 элементов
// выводим каждую часть
foreach($parts as $part){
    print_r($part);
}
1
Йошь-мыслитель
 Аватар для Xander Bass
126 / 120 / 26
Регистрация: 22.02.2009
Сообщений: 706
Записей в блоге: 5
04.09.2015, 13:50
Не понял, а зачем удалять в данном случае элементы из массива?

PHP
1
2
3
4
5
6
$pack_length = 5;
$pack_count = ceil(count($mar) / $pack_length);
for ($i = 0; $i < $pack_count; $i++) {
  $X = array_slice($mar,$i * $pack_length,$pack_length);
// Делаем нужный действия с массивом $X
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.09.2015, 13:50
Помогаю со студенческими работами здесь

Ввод элементов массива в цикле
помогите ...нужно написать программу по заданию на картинке 3 вариант отмечен

Подсчет суммы элементов массива в цикле
Добрый все день. Столкнулся с неприятной проблемой. У меня есть массив 20 цифр (положительных так и отрицательных) Мне нужно узнать их...

Конструктор элементов массива объектов класса в цикле
Подскажите, возможно ли как то вызывать конструктор в цикле? Где ни посмотрю, везде размер массива объектов задан однозначно и каждый...

Как сделать в цикле проверку элементов массива на дубликаты
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { ...

Удаление элементов одномерного массива, больших последнего элемента этого массива
составьте программу удаления элементов одномерного массива A(N) больших последнего элемента этого массива


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru