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 ֆունկցիան,
    որը գրում է ֆայլում