Запись строковых данных в файл (перезаписать, если уже существует, и создать новый, если не существует) - PullRequest
2 голосов
/ 11 апреля 2011

Я хочу записать содержимое строковой переменной, скажем, $ data

в файл с именем data.xml расположение папки будет меняться в зависимости от содержимого переменной $ appId

как будто я хочу написать файл в

  files_dir/$appId/data.xml

более того, если этот файл уже существует, чем я хочу переписать, иначе я хочу создать папку а затем создайте файл data.xml

Можете ли вы предложить какой-нибудь способ сделать это.

Ответы [ 2 ]

5 голосов
/ 11 апреля 2011

Открыть файл с режимом записи "w".попытается создать файл, если он не существует, иначе обрезать файл до нулевой длины.

$handle = fopen("files_dir/$appId/data.xml", "w");

Открыть только для записи;поместите указатель файла в начале файла и обрежьте файл до нулевой длины.Если файл не существует, попытайтесь его создать.

Вы можете проверить, существует ли каталог

if (!is_dir("files_dir/$appId")) mkdir("files_dir/$appId",0777);
$handle = fopen("files_dir/$appId/data.xml", "w");

Укажите полный путь к каталогу и файлам.

0 голосов
/ 11 апреля 2011

Вы можете использовать file_put_contents() для записи в файл: http://php.net/manual/en/function.file-get-contents.php

И вы можете использовать mkdir() для создания части папки: http://php.net/manual/en/function.mkdir.php

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