<MyRusakov.ru />

Своя Web-студия за 55 дней

Своя Web-студия за 55 дней

Система "Своя Web-студия за 55 дней" поможет Вам открыть свою собственную успешную Web-студию всего за 55 дней. Обучение построено на теории, плюс практике, то есть я прямо на Ваших глазах буду абсолютно с нуля открывать свою Web-студию, нанимать специалистов, принимать и выполнять заказы. Это настоящее реалити-шоу. Плюс весь курс разбит по дням, в каждый из которых Вам необходимо будет посмотреть небольшое количество видеоуроков, выполнить задания по этим урокам и проставить галочки о выполнении. Каждый из дней у Вас будет отнимать не более 1-го часа в день.

Таким образом, выполняя ежедневно маленькие шажки, Вы через 55 дней станете владельцем уже прибыльной Web-студии, заработав при этом первые 100 000 рублей.

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

Подписавшись по 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

Сообщений: 133

Привет! Попробуй так.
$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

Сообщений: 133

В моем коде функция вызывается один раз, а в Вашем несколько.
Я оба кода проверил, у меня все работает. 
Профиль Ответить
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

Сообщений: 133

Вот и не хватает памяти для такого скрипта!
Профиль Ответить
08.10.2018 11:39:57 работа со строками и массивами Сообщение #7
gogi

gogi

Эксперт

Эксперт

Дата регистрации:
05.09.2018 10:59:59

Сообщений: 121

это точно
Профиль Ответить