Сохраните переменную в текстовом файле или XML-файле - PullRequest
0 голосов
/ 02 декабря 2011

У меня нет доступа к базе данных.Есть ли способ сохранить php или javascript в постоянный текстовый файл или XML-файл?

Любая помощь будет оценена

Ответы [ 4 ]

1 голос
/ 02 декабря 2011

Прямой ответ на вопрос

Чтобы ответить на ваш вопрос напрямую (сохраняя одну переменную), вы должны сделать:

$file_path = '/path/to/your/text.file';
$my_var = 'my value';
file_put_contents($file_path, serialize($my_var));

Чтобы получить значение, вы должны сделать что-то вроде этого:

$my_var = '';
$file_contents = file_get_contents($file_path);
if(!empty($file_contents)) {
    $my_var = unserialize($file_contents);
}

Используя serialize(), вы разрешаете своему коду хранить массив или объект stdClass, а также числа и строки в $my_var.

SQLite будет лучше

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

Для взаимодействия с SQLite я бы рекомендовал использовать PHP PDO или, возможно, Idiorm .

0 голосов
/ 02 декабря 2011

Запишите его в файл, посмотрите на Flintstone хранилище базы данных ключ / значение с использованием плоских файлов.

0 голосов
/ 02 декабря 2011

Если у вас есть хотя бы FTP-доступ, вам нужно создать доступную для записи папку (т. Е. Установить права доступа 777). Из вашего кода PHP:

$data = 'some data'; //xml or txt or whatever
file_put_contents('path_to_your_writable_folder/your_file_name.txt', $data);
0 голосов
/ 02 декабря 2011

Нельзя хранить файлы с JavaScript.Однако вы можете легко писать файлы (на сервере) с помощью PHP.Если вы хотите сохранить простой простой текст в файле, просто сделайте следующее:

File_Put_Contents ( '/path/to/file.txt', 'some content' );

Если вы хотите манипулировать XML, взгляните на расширение SimpleXML .

Вы также можете использовать SQLite для своей базы данных, так как это «просто» файл и вам не нужно ничего устанавливать (PHP> = 5).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...