file_put_contents функциясы

file_put_contents функциясы деректерді файлға жазады. Бірінші параметр - файлға дейінгі жол, екіншісі - жазу үшін деректер. Үшінші қосымша параметр жазу режимін анықтайды (төмендегі кестені қараңыз).

Төртінші қосымша параметр stream_context_create функциясымен жасалған ағын контекстінің ресурсын білдіреді. Файлмен немесе желілік ресурспен жұмыс параметрлерін баптауға мүмкіндік береді.

Синтаксис

phpfile_put_contents(
  string $filename,
  mixed $data,
  int $flags = 0,
  ?resource $context = null
): int|false

Үшінші параметрдің мәндері

Флаг Сипаттама
FILE_USE_INCLUDE_PATH Егер орнатылса, функция файлды PHP баптауларындағы php.ini файлындағы include_path параметрінде көрсетілген директориялардан іздейді.
FILE_APPEND Деректерді файлды қайта жазу орнына соңына қосу
LOCK_EX Жазу уақытында файлға эксклюзивтіқ құлыптау алу

Мысал

Файлға жолды жазайық:

php<?php
  $res = file_put_contents('data.txt', 'abcde');
  echo $res;
?>

Кодты орындау нәтижесі жазылған байт санын қайтарады:

php5

Мысал

Деректерді файл соңына қосайық:

php<?php
  $res = file_put_contents('data.txt', '12345', FILE_APPEND);
  echo $res;
?>

Мысал

Массивті файлға жазу:

php<?php
  $data = ['a', 'b', 'c'];
  $res = file_put_contents('array.txt', implode(',', $data));
  echo $res;
?>

Мысал

Үшінші параметрде бірнеше флагтарды | символы арқылы тізіп көрсетуге болады. Мысал ретінде файлды құлыптап деректерді қосамыз:

php<?php
  $res = file_put_contents(
    'log.txt',
    "text",
    FILE_APPEND | LOCK_EX
  );
  echo $res;
?>

Мысал

Контекстті қолдану:

php<?php
  $opts = [
    'http' => [
      'method' => "POST",
      'header' => "Content-type: text/plain\r\n"
    ]
  ];
  
  $context = stream_context_create($opts);
  
  $res = file_put_contents(
    'http://example.com/api',
    'data=test',
    false,
    $context
  );
?>

Сондай-ақ қараңыз

  • file_get_contents функциясын,
    ол файл мазмұнын оқиды
  • fopen функциясын,
    ол файлды ашады
  • fwrite функциясын,
    ол файлға жазады