Модераторы: Aliance, skyboy, MoLeX, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Перевод текстовой информации в массив данных 
:(
    Опции темы
shtuceron
Дата 17.2.2008, 19:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 161
Регистрация: 17.2.2008

Репутация: нет
Всего: нет



Доброго времени суток, помогите решить одну проблему. 
У меня есть текстовый файл вида: 1, 20, 7, -15, 3, -9, -38, 12, 4. Нужно перетащить все значения в массив список.
Спасибо за внимание.
Привожу свой пример (но он не рабочий, если можно исправьте пожалуйста мою ошибку).
Код


<?php
$f=fopen("./array.txt","rt");
$st="";
$st=fgets($f);
fclose($f);
print_r($st);
echo "<br>Длина строки: ".strlen($st)."<br>";
$buf="";
$mas=array();
for ($i=0; $i=strlen($st); $i++) {
  $buf=$buf.substr($st, $i, $i);
  if (substr($st, $i, $i)=="," || $i==strlen($st)) { $mas[]=$buf; $buf=""; }
}
?>


M
skyboy
пользуйемся кнопкой "код"!


Это сообщение отредактировал(а) skyboy - 18.2.2008, 11:17
PM MAIL WWW   Вверх
GeneralElectric
Дата 17.2.2008, 19:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 797
Регистрация: 11.1.2008

Репутация: 0
Всего: 16



Сейчас тебе напишут готовую функцию, которая это делает, но я бы на твоем месте доотладил этот скрипт.
Отлаживать придется ещё очень много, и лучше начинать с таких простых задач, чем потом совсем пасовать перед более сложными.

почему бы тебе не выводить результаты вычислений - все эт и buf substrb прочее, чтобы контролировать визуально - правильно ли работает алгоритм?


PM MAIL   Вверх
source777
Дата 17.2.2008, 19:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 2
Всего: 56



shtuceron, explode тебя спасет smile 


--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
shtuceron
Дата 17.2.2008, 22:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 161
Регистрация: 17.2.2008

Репутация: нет
Всего: нет



Огромное спасибо source777, все получилось и работает, функция explode() оказалась действительно полезной!
PM MAIL WWW   Вверх
shtuceron
Дата 17.2.2008, 23:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 161
Регистрация: 17.2.2008

Репутация: нет
Всего: нет



Товарищи, если кому интересно, то помучив код по предложению GeneralElectric вышло следующее, скрипт рабочий:

Код

<?php
$f=fopen("./array.txt","rt");
$st="";
$st=fgets($f);
fclose($f);
print_r($st);
echo "<br>Длина строки: ".strlen($st)."<br>";
$buf="";
$mas=array();
for ($i=0; $i<=strlen($st); $i++) {
  $buf=$buf.substr($st, $i, 1);
  if (substr($st, $i, 1)=="," || $i==strlen($st)) { 
    $buf=str_replace(",", "", $buf);
    $mas[]=$buf; 
    $buf=""; 
  }
}
print_r($mas);
?>


M
skyboy
пользуемся кнопкой "код"!


Это сообщение отредактировал(а) skyboy - 18.2.2008, 11:18
PM MAIL WWW   Вверх
source777
Дата 17.2.2008, 23:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 2
Всего: 56



Молодец, а теперь ещё напиши для тренировки версию с использованием функции strpos


--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Тексты | Следующая тема »


 




[ Время генерации скрипта: 0.0449 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.