php-doc-en/reference/phar/Phar/offsetSet.xml
Máté Kocsis 28046efaba
Generate ext/phar methodsynopsis based on stubs
Co-authored-by: Christoph M. Becker <cmbecker69@gmx.de>

Closes GH-626.
2021-09-03 14:35:53 +02:00

130 lines
3.4 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="phar.offsetset" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>Phar::offsetSet</refname>
<refpurpose>Set the contents of an internal file to those of an external file</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>void</type><methodname>Phar::offsetSet</methodname>
<methodparam><type>string</type><parameter>localName</parameter></methodparam>
<methodparam><type class="union"><type>resource</type><type>string</type></type><parameter>value</parameter></methodparam>
</methodsynopsis>
&phar.write;
<para>
This is an implementation of the <interfacename>ArrayAccess</interfacename> interface allowing
direct manipulation of the contents of a Phar archive using
array access brackets. offsetSet is used for modifying an
existing file, or adding a new file to a Phar archive.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>localName</parameter></term>
<listitem>
<para>
The filename (relative path) to modify in a Phar.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>value</parameter></term>
<listitem>
<para>
Content of the file.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
No return values.
</para>
</refsect1>
<refsect1 role="errors">
&reftitle.errors;
<para>
if <link linkend="ini.phar.readonly">phar.readonly</link> is <literal>1</literal>,
<classname>BadMethodCallException</classname> is thrown, as modifying a Phar
is only allowed when phar.readonly is set to <literal>0</literal>. Throws
<classname>PharException</classname> if there are any problems flushing
changes made to the Phar archive to disk.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>A <function>Phar::offsetSet</function> example</title>
<para>
offsetSet should not be accessed directly, but instead used
via array access with the <literal>[]</literal> operator.
</para>
<programlisting role="php">
<![CDATA[
<?php
$p = new Phar('/path/to/my.phar', 0, 'my.phar');
try {
// calls offsetSet
$p['file.txt'] = 'Hi there';
} catch (Exception $e) {
echo 'Could not modify file.txt:', $e;
}
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
&phar.note.performance;
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>Phar::offsetExists</function></member>
<member><function>Phar::offsetGet</function></member>
<member><function>Phar::offsetUnset</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:"~/.phpdoc/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
-->