<?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.7 $ --> <refentry id="function.file-put-contents"> <refnamediv> <refname>file_put_contents</refname> <refpurpose>Write a string to a file</refpurpose> </refnamediv> <refsect1 role="description"> &reftitle.description; <methodsynopsis> <type>int</type><methodname>file_put_contents</methodname> <methodparam><type>string</type><parameter>filename</parameter></methodparam> <methodparam><type>mixed</type><parameter>data</parameter></methodparam> <methodparam choice="opt"><type>int</type><parameter>flags</parameter></methodparam> <methodparam choice="opt"><type>resource</type><parameter>context</parameter></methodparam> </methodsynopsis> <simpara> Identical to calling <function>fopen</function>, <function>fwrite</function>, and <function>fclose</function> successively. </simpara> <para> You can also specify the <parameter>data</parameter> parameter as an array (not multi-dimension arrays). This is equivalent to <literal>file_put_contents($filename, join('', $array))</literal>. </para> <para> As of PHP 5.1.0, you may also pass a stream resource to the <parameter>data</parameter> parameter. In result, the remaining buffer of that stream will be copied to the specified file. This is similar with using <function>stream_copy_to_stream</function>. </para> </refsect1> <refsect1 role="parameters"> &reftitle.parameters; <para> <variablelist> <varlistentry> <term><parameter>filename</parameter></term> <listitem> <para> The file name where to write the data </para> </listitem> </varlistentry> <varlistentry> <term><parameter>data</parameter></term> <listitem> <para> The data to write. Can be either a <type>string</type>, an <type>array</type> or a <type>stream</type> resource (explained above). </para> </listitem> </varlistentry> <varlistentry> <term><parameter>flags</parameter></term> <listitem> <para> <parameter>flags</parameter> can take <constant>FILE_USE_INCLUDE_PATH</constant>, <constant>FILE_APPEND</constant> and/or <constant>LOCK_EX</constant> (acquire an exclusive lock), however the <constant>FILE_USE_INCLUDE_PATH</constant> option should be used with caution. </para> </listitem> </varlistentry> <varlistentry> <term><parameter>context</parameter></term> <listitem> <para> A context resource </para> </listitem> </varlistentry> </variablelist> </para> </refsect1> <refsect1 role="returnvalues"> &reftitle.returnvalues; <para> The function returns the amount of bytes that were written to the file. </para> </refsect1> <refsect1 role="changelog"> &reftitle.changelog; <para> <informaltable> <tgroup cols="2"> <thead> <row> <entry>&Version;</entry> <entry>&Description;</entry> </row> </thead> <tbody> <row> <entry>5.1.0</entry> <entry> Added support for <constant>LOCK_EX</constant> and the ability to pass a stream resource to the <parameter>data</parameter> parameter </entry> </row> </tbody> </tgroup> </informaltable> </para> </refsect1> <refsect1 role="notes"> &reftitle.notes; ¬e.bin-safe; ¬e.context-support; &tip.fopen-wrapper; </refsect1> <refsect1 role="seealso"> &reftitle.seealso; <para> <simplelist> <member><function>fopen</function></member> <member><function>fwrite</function></member> <member><function>file_get_contents</function></member> </simplelist> </para> </refsect1> </refentry> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t indent-tabs-mode:nil sgml-parent-document:nil sgml-default-dtd-file:"../../../../manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 -->