Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
Страницы: (3) 1 [2] 3  ( Перейти к первому непрочитанному сообщению )  
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Создать массив из текстового файла, В текстовом файле записаны ключи и значения
sergeiss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Сидел он, дум великих полон - и вдаль глядел
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 15192
Пользователь №: 4190
На форуме: 9 лет, 21 день
Карма: 454




Цитата (BuTOC_90 @ 21.03.2016 - 17:03)
просто в коде стоит у меня txt, и я особо не менял..

Ты не ответил на вопрос о происхождении этих данных - ты их сам пишешь или кто-то другой их создает и ты не можешь изменять формат.


--------------------
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
FatCat  
[x] Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Чеширский кот
******

Профиль
Журнал
Группа: Администратор
Почтальон группы
Сообщений: 5978
Пользователь №: 1
На форуме: 11 лет, 20 дней
Карма: 126

Не пью :
22 года, 5 месяцев, 20 дней


Цитата (BuTOC_90 @ 21.03.2016 - 16:03)
значения пропадают

$arr = file(example.txt);
foreach($arr as $k=>$v)
{
if(stristr($v, ' => '))
{
$v = explode(' => ', $v);
$v[0] = explode("'", $v[0]);
$v[0] = count($v[0]) == 3 ? $v[0][1] : $v[0][0];
$v[1] = explode("'", $v[1]);
$v[1] = count($v[1]) == 3 ? $v[1][1] : $v[1][0];
$arr[$v[0]] = $v[1];
}
unset($arr[$k]);
}


--------------------
Бесплатному сыру в дырки не заглядывают...
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
BuTOC_90  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 10
Пользователь №: 42712
На форуме: 11 месяцев, 7 дней
Карма:




Цитата (sergeiss @ 21.03.2016 - 18:12)
Ты не ответил на вопрос о происхождении этих данных - ты их сам пишешь или кто-то другой их создает и ты не можешь изменять формат.


да, могу поменять формат

он создаётся через функцию file_put_contents. могу поставить формат любой
Цитата (FatCat @ 22.03.2016 - 01:11)
$arr = file(example.txt);
foreach($arr as $k=>$v)
{
if(stristr($v, ' => '))
{
  $v = explode(' => ', $v);
  $v[0] = explode("'", $v[0]);
  $v[0] = count($v[0]) == 3 ? $v[0][1] : $v[0][0];
  $v[1] = explode("'", $v[1]);
  $v[1] = count($v[1]) == 3 ? $v[1][1] : $v[1][0];
  $arr[$v[0]] = $v[1];
}
unset($arr[$k]);
}


сейчас попробую, спасибо)
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sergeiss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Сидел он, дум великих полон - и вдаль глядел
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 15192
Пользователь №: 4190
На форуме: 9 лет, 21 день
Карма: 454




Цитата (BuTOC_90 @ 22.03.2016 - 08:17)
да, могу поменять формат

Ну так и поменяй!!!!!!!!!!!!!!

json_encode() & json_decode() тебе в руки. Сделаешь обработку данных, прочитанных из файла, в одну строку. Да и запись тоже будет в одну строку.


--------------------
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Лысый и злой
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 26190
Пользователь №: 21350
На форуме: 6 лет, 11 месяцев, 13 дней
Карма: 728

Не курю:
1 год, 4 месяца, 29 дней


Цитата
json_encode() & json_decode()

да не)) это больше для упаковки данных при перемещении

вот

serialize()
unserialize()


--------------------
Халявные ответы кончились.
Если нужен готовый код - готовьтесь заплатить.
Райкин тоже был артист

Возле дома был сарай
А когда всё хорошо
Можно просто покурить

user posted image
http://ufa102.xyz/
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sergeiss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Сидел он, дум великих полон - и вдаль глядел
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 15192
Пользователь №: 4190
На форуме: 9 лет, 21 день
Карма: 454




Цитата (Игорь_Vasinsky @ 22.03.2016 - 09:56)
да не)) это больше для упаковки данных при перемещении

По сути одно и то же. Но если он потом захочет эти данные отправить в JS вместо обработки в ПХП, то просто возьмёт и отправит, без переупаковки. Поэтому формат JSON мне больше нравится, как более универсальный.


--------------------
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
BuTOC_90  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 10
Пользователь №: 42712
На форуме: 11 месяцев, 7 дней
Карма:




Цитата (sergeiss @ 22.03.2016 - 09:08)
Ну так и поменяй!!!!!!!!!!!!!!

json_encode() & json_decode() тебе в руки. Сделаешь обработку данных, прочитанных из файла, в одну строку. Да и запись тоже будет в одну строку.

Цитата (Игорь_Vasinsky @ 22.03.2016 - 09:56)
да не)) это больше для упаковки данных при перемещении

вот

serialize()
unserialize()

Цитата (sergeiss @ 22.03.2016 - 11:10)
По сути одно и то же. Но если он потом захочет эти данные отправить в JS вместо обработки в ПХП, то просто возьмёт и отправит, без переупаковки. Поэтому формат JSON мне больше нравится, как более универсальный.


да пока мис с тхт хоть разобраться. потом уже с другими разбираться форматами...



Цитата (BuTOC_90 @ 22.03.2016 - 08:17)
Цитата (FatCat @ 22.03.2016 - 01:11)
$arr = file(example.txt);
foreach($arr as $k=>$v)
{
if(stristr($v, ' => '))
{
  $v = explode(' => ', $v);
  $v[0] = explode("'", $v[0]);
  $v[0] = count($v[0]) == 3 ? $v[0][1] : $v[0][0];
  $v[1] = explode("'", $v[1]);
  $v[1] = count($v[1]) == 3 ? $v[1][1] : $v[1][0];
  $arr[$v[0]] = $v[1];
}
unset($arr[$k]);
}


сейчас попробую, спасибо)


всё заработало, спасибо большое!))
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
FatCat  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Чеширский кот
******

Профиль
Журнал
Группа: Администратор
Почтальон группы
Сообщений: 5978
Пользователь №: 1
На форуме: 11 лет, 20 дней
Карма: 126

Не пью :
22 года, 5 месяцев, 20 дней


Лучше сразу делать правильно: выводить в том формате, который удобно принимать.


--------------------
Бесплатному сыру в дырки не заглядывают...
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
twin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Глухой нуб
******

Профиль
Группа: Администратор
Почтальон группы
Сообщений: 15871
Пользователь №: 6543
На форуме: 8 лет, 4 месяца, 24 дня
Карма: 300

Трезвый :
6 лет, 2 месяца, 2 дня


Цитата (FatCat @ 22.03.2016 - 14:34)
Лучше сразу делать правильно: выводить в том формате, который удобно принимать.

Тут соглашусь. Но вот эксперименты с парсингом весьма сомнительны.
А если так:
'name' => 'Ivan => 666',


И кстати, чем eval() не угодил? Ведь никто даже не спросил, откуда данные в файле и как они готовятся...


--------------------
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
PMСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Zzepish  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Аццкая хрень
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 5583
Пользователь №: 32538
На форуме: 4 года, 9 месяцев, 1 день
Карма: 56




twin
ибо все, что не по шаблону - зло по-умолчанию!


--------------------
Правда тоже ложь, но с иным углом.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
twin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Глухой нуб
******

Профиль
Группа: Администратор
Почтальон группы
Сообщений: 15871
Пользователь №: 6543
На форуме: 8 лет, 4 месяца, 24 дня
Карма: 300

Трезвый :
6 лет, 2 месяца, 2 дня


Ну тут ты не прав. FatCat никогда не отличался шаблонным мышлением. В данном случае eval() тоже не может быть правильным решением, потому что мало вводных.

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


--------------------
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
PMСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Zzepish  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Аццкая хрень
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 5583
Пользователь №: 32538
На форуме: 4 года, 9 месяцев, 1 день
Карма: 56




twin
тоже верно. Но я имел в виду тех, кто говорит, что eval НИКОГДА использовать не стоит. Их стоит отнести, пожалуй, к людям, с ООП головного мозга, и паттернами головного омзга


--------------------
Правда тоже ложь, но с иным углом.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sergeiss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Сидел он, дум великих полон - и вдаль глядел
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 15192
Пользователь №: 4190
На форуме: 9 лет, 21 день
Карма: 454




Цитата (twin @ 22.03.2016 - 20:05)
Ведь никто даже не спросил, откуда данные в файле и как они готовятся...

Ну как бы я аж 2 (два!) раза это спросил... И даже ответ получил:
Цитата (BuTOC_90 @ 22.03.2016 - 08:17)
да, могу поменять формат


Потому и говорил про JSON, что я бы его стал использовать.


Это сообщение отредактировал sergeiss - 22.03.2016 - 22:25


--------------------
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
depp  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 350
Пользователь №: 40589
На форуме: 2 года, 2 месяца, 23 дня
Карма: 22




Цитата (Zzepish @ 22.03.2016 - 21:05)
twin
тоже верно. Но я имел в виду тех, кто говорит, что eval НИКОГДА использовать не стоит. Их стоит отнести, пожалуй, к людям, с ООП головного мозга, и паттернами головного омзга

ставлю всегда в disable functions на уровне php ini
не было еще такой задачи, требующей eval. и флаг "e" в preg_replace не зря убрали.

Это сообщение отредактировал depp - 22.03.2016 - 23:51
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
twin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Глухой нуб
******

Профиль
Группа: Администратор
Почтальон группы
Сообщений: 15871
Пользователь №: 6543
На форуме: 8 лет, 4 месяца, 24 дня
Карма: 300

Трезвый :
6 лет, 2 месяца, 2 дня


Цитата (depp @ 22.03.2016 - 19:49)
не было еще такой задачи, требующей eval.

Нууу... какие твои годы smile.gif Наверное с шаблонизаторами не работал никогда.
Цитата (depp @ 22.03.2016 - 19:49)
и флаг "e" в preg_replace не зря убрали.

А он там и не нужен был. только вред от него. Те задачи решались куда более прозрачно и элегантно.


--------------------
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
PMСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темыСтраницы: (3) 1 [2] 3  Ответ в темуСоздание новой темыСоздание опроса