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

Поиск:

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


Шустрый
*


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

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



Скажите пожалуйсто, вот допустим у нас теперь есть два файла: с основным кодом: proba.php и для хранения переменных xranen.php.
Как я могу записывать в файл xranen.php переменные, и как я смогу их оттуда достать в файл proba.php?
Если не трудно, напишите код
--------------------
Да помоги кодеру, а значит - ближнему своему!
PM MAIL WWW ICQ Skype MSN   Вверх
GeneralElectric
Дата 27.1.2008, 15:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Не надо записывать переменные в php-файл.
не надо вообще создавать php-файлы своими скриптами.
ПРОГРАММА должна быть написана одним человеком - программистом.
А для хранения ДАННЫХ нажно записывать их не в программу, а в файл данных.
К примеру, текстовый файл, где каждая строчка является значением какой-либо переменной, тебя устроит?

Добавлено через 58 секунд
Вообще, поясни - какие именно данные ты собрался хранить. От характера данных во многом зависит способ хранения. Это будут результаты голосования?
PM MAIL   Вверх
Maycal
Дата 27.1.2008, 16:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Цитата(GeneralElectric @  27.1.2008,  15:58 Найти цитируемый пост)
Это будут результаты голосования?

да, именно
Нужно знать как их туда записать и как их оттуда прочитать
--------------------
Да помоги кодеру, а значит - ближнему своему!
PM MAIL WWW ICQ Skype MSN   Вверх
webevt
Дата 27.1.2008, 16:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



С БД меньше мороки, да и работает она быстрее, чем файлы.

Цитата(Maycal @  27.1.2008,  15:29 Найти цитируемый пост)
Как я могу записывать в файл 

Код

fwrite ( resource handle, string string[, int length] );


Примерно в такой структуре:
Цитата

query1 | value
query2 | value
query3 | value


Это сообщение отредактировал(а) webevt - 27.1.2008, 16:21
PM MAIL   Вверх
flashaa
Дата 27.1.2008, 16:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(Maycal @  27.1.2008,  16:06 Найти цитируемый пост)
Нужно знать как их туда записать и как их оттуда прочитать

Подумай, как будешь хранить информацию. Можно как переменную PHP,
А любая переменная представима в виде строки с помощью ф-ции serialize();

В этом случае, пример кода может быть таким:
Код

<?php

$a = (array)unserialize(file_get_contents('file.txt')); // получаем из файла наш массив

print_r($a); // выводим содержимое массива
array_push($a, 'значение'); // добавляем новое значение в массив

file_put_contents('file.txt', serialize($a)); // сохраняем измененный массив
?>


Этот код будет при каждом запуске считывать строкое представление массива из файла, редактировать массив и сохранять его новое состояние. Таким образом, массив не будет потерян между запусками скрипта. Если конечно не испортить или удалить "хранилище" для массива - файл file.txt. 

to Moderators : может быть стоит написать правила составления вопросов? К примеру сначала описываете, что вы собирались сделать, затем какими способами и в чем собственно проблема. В большинстве топов мы видим уже далеко ушедшие рассуждения, когда непонятно для чего это было.

Это сообщение отредактировал(а) flashaa - 27.1.2008, 16:27
PM MAIL   Вверх
Maycal
Дата 27.1.2008, 20:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Огромное спасибо!
Скажите, а как можно не добавлять запись в существующий массив, а перезаписывать информацию в нем?
--------------------
Да помоги кодеру, а значит - ближнему своему!
PM MAIL WWW ICQ Skype MSN   Вверх
Maycal
Дата 27.1.2008, 20:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



по сути, строку
Код

array_push($a, 'значение'); // добавляем новое значение в массив

нужно заменить array_push на что-то для замены имеющейся записи в массиве на новую

--------------------
Да помоги кодеру, а значит - ближнему своему!
PM MAIL WWW ICQ Skype MSN   Вверх
GeneralElectric
Дата 27.1.2008, 20:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Про присвоение значения элементу массива можно почитать в документации http://php.net/types.array
PM MAIL   Вверх
Maycal
Дата 27.1.2008, 21:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Я читал, но плохо понел, покажите пожалуйста на моем примере, как можно массиву находящемуся в файле file.txt (массив внутри файла выглядит так: a:2:{i:0;b:0;i:1;s:0:"1";}) присвоить значение с помощью строчек
Код

array_push($a, "$value");
file_put_contents('file.txt', serialize($a));

--------------------
Да помоги кодеру, а значит - ближнему своему!
PM MAIL WWW ICQ Skype MSN   Вверх
flashaa
Дата 27.1.2008, 22:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Maycal, с массивом это просто пример.
Ты можешь хранить абсолютно любые переменные вот в таком виде.
Например, строку 's', при этом код почти не изменится:
Код

<?php
$a = (string)unserialize(file_get_contents('file.txt')); // получаем из файла переменную
$a = 's'; // присваиваем нашей переменной новое значение
file_put_contents('file.txt', serialize($a)); // сохраняем измененную переменную
?>


Если требуется редактирование массива, то так ты можешь сделать это так (вместо array_push):
$a['key'] = 'value'; 
где value- твое значение, которое хочешь поместить в массив.

Кстати говоря в стандартном механизме сессий хранилище работает так же - unserialize, редактирование, serialize, сохранение.
PM MAIL   Вверх
GeneralElectric
Дата 27.1.2008, 22:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Maycal, тебе не нужно ничего присваивать массиву находящемуся в файле file.txt.
тебе нужно присвоить массиву $a.
PM MAIL   Вверх
Maycal
Дата 27.1.2008, 22:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Еще раз спасибо за помощь новичку, вы мне очень помогли!
--------------------
Да помоги кодеру, а значит - ближнему своему!
PM MAIL WWW ICQ Skype MSN   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




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


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

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