<MyRusakov.ru />

Профессия Web-разработчик

Профессия Web-разработчик

Этот комплект за 8 месяцев превратит Вас в Web-разработчика с нуля. Учиться достаточно 1 час в день.

Начнёте Вы с HTML, CSS и вёрстки сайтов. Потом перейдёте к программированию и JavaScript. Затем изучите PHP, MySQL, SQL, Python. Изучите Web-фреймворки Laravel и Django. Создадите 5 своих сайтов для портфолио.

Комплект содержит:

- 540 видеоуроков

- 110 часов видео

- 1205 заданий для закрепления материала из уроков

- 5 финальных тестов

- 7 сертификатов

- 12 Бонусных курсов

Подробнее
Подписка

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Какая тема Вас интересует больше?

Форум сайта MyRusakov.ru

работа со строками и массивами
14.05.2017 20:04:05 работа со строками и массивами Сообщение #1
realmadrid94_94

realmadrid94_94

Новичок

Новичок

Дата регистрации:
23.02.2016 21:44:41

Сообщений: 3

Здравствуйте, у меня есть строка длиной 5585552 символов. Мне нужно в цикле на каждом итерации  вырезать 1 символ  и добавить в массив.


$data = "String with a length of 5585552 characters"; 
$array = array();
for($i = 0; $i < strlen($data); $i++){
$array[] = substr($data, $i, strlen($data));
}

А скрипт пишет это: Fatal error: Allowed memory size of 1572864000 bytes exhausted (tried to allocate 180397 bytes) in Z:\home\zada4i.tj\www\209\index.php on line 39. 

это и есть строка 39 $array[] = substr($data, $i, strlen($data));

Я уже изменил memory_limit в php.ini на 1024М
Профиль
15.05.2017 20:42:05 работа со строками и массивами Сообщение #2
lll

lll

Эксперт

Эксперт

Дата регистрации:
17.06.2016 22:32:32

Сообщений: 134

Привет! Попробуй так.
$data = "String with a length of 5585552 characters";  
$array = array();
$len=strlen($data); 
for($i = 0; $i <$len; $i++){ 
   $array[] = substr($data, $i, $len); 
}
Профиль
16.05.2017 21:10:50 работа со строками и массивами Сообщение #3
realmadrid94_94

realmadrid94_94

Новичок

Новичок

Дата регистрации:
23.02.2016 21:44:41

Сообщений: 3

Привет! Ваш код и мой одинаковы. Просто Вы использовали переменную $len.  Ваш код тоже не работает. 
Профиль
16.05.2017 21:21:46 работа со строками и массивами Сообщение #4
lll

lll

Эксперт

Эксперт

Дата регистрации:
17.06.2016 22:32:32

Сообщений: 134

В моем коде функция вызывается один раз, а в Вашем несколько.
Я оба кода проверил, у меня все работает. 
Профиль
16.05.2017 22:06:08 работа со строками и массивами Сообщение #5
realmadrid94_94

realmadrid94_94

Новичок

Новичок

Дата регистрации:
23.02.2016 21:44:41

Сообщений: 3

А у Вас был строка длиною 5585552 символов и создался ли массив с 5585552 элементами?  
Профиль
16.05.2017 22:24:45 работа со строками и массивами Сообщение #6
lll

lll

Эксперт

Эксперт

Дата регистрации:
17.06.2016 22:32:32

Сообщений: 134

Вот и не хватает памяти для такого скрипта!
Профиль