- Document input_get_args() and new constants.

- Change default filter type from string to unsafe_raw.
- INI settings are now PERDIR and not SYSTEM.


git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@212678 c90b9560-bf6c-de11-be94-00142212c4b1
This commit is contained in:
Dave Barr 2006-05-09 02:07:12 +00:00
parent a387617176
commit d03868c7c2
3 changed files with 222 additions and 5 deletions

View file

@ -1,5 +1,5 @@
<?xml version='1.0' encoding='iso-8859-1'?>
<!-- $Revision: 1.1 $ -->
<!-- $Revision: 1.2 $ -->
<!-- Generated by xml_proto.php v2.4. Found in /scripts directory of phpdoc. -->
<section id="filter.constants">
&reftitle.constants;
@ -71,6 +71,17 @@
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>
<constant>INPUT_DATA</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
User-defined set of variables.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>
<constant>FILTER_FLAG_NONE</constant>
@ -291,6 +302,30 @@
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>
<constant>FILTER_FLAG_SCALAR</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
Allow scalar types (non-<type>array</type>) only in filter.
Currently used by <function>input_get_args</function>.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>
<constant>FILTER_FLAG_ARRAY</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
Only allow <type>array</type> type in filter.
Currently used by <function>input_get_args</function>.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>
<constant>FILTER_FLAG_ALLOW_OCTAL</constant>

View file

@ -0,0 +1,182 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.1 $ -->
<refentry id="function.input-get-args">
<refnamediv>
<refname>input_get_args</refname>
<refpurpose>Gets multiple variables from outside PHP and optionally filters them</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>mixed</type><methodname>input_get_args</methodname>
<methodparam><type>array</type><parameter>definition</parameter></methodparam>
<methodparam><type>int</type><parameter>type</parameter></methodparam>
<methodparam choice="opt"><type>array</type><parameter>data</parameter></methodparam>
</methodsynopsis>
&warn.experimental.func;
<para>
This function is useful for retrieving a large amount of values without
repetitively calling <function>input_get</function>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>definition</parameter></term>
<listitem>
<para>
An array defining the arguments. A valid key is a <type>string</type>
containing a variable name and a valid value is either a filter type,
or an <type>array</type> optionally specifying the filter, flags and
options. If the value is an array, valid keys are
<literal>filter</literal> which specifies the filter type,
<literal>flags</literal> which specifies any flags that apply to the
filter, and <literal>options</literal> which specifies any options
that apply to the filter. See the example below for a better
understanding.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>type</parameter></term>
<listitem>
<para>
One of <constant>INPUT_GET</constant>, <constant>INPUT_POST</constant>,
<constant>INPUT_COOKIE</constant>, <constant>INPUT_SERVER</constant>,
<constant>INPUT_ENV</constant>, <constant>INPUT_SESSION</constant>, or
<constant>INPUT_DATA</constant>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
Data to filter. Used if the <parameter>type</parameter> parameter is
set to <constant>INPUT_DATA</constant>.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
An array containing the values of the requested variables on success, or
&false; if an error occurred.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>A <function>input_get_args</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
error_reporting(E_ALL | E_STRICT);
$data = array(
'product_id' => 'libgd<script>',
'component' => '10',
'versions' => '2.0.33',
'testscalar' => array('2', '23', '10', '12'),
'testarray' => '2',
);
$args = array(
'product_id' => FILTER_SANITIZE_ENCODED,
'component' => array('filter' => FILTER_VALIDATE_INT,
'flags' => FILTER_FLAG_ARRAY,
'options' => array('min_range' => 1, 'max_range' => 10)
),
'versions' => FILTER_SANITIZE_ENCODED,
'doesnotexist' => FILTER_VALIDATE_INT,
'testscalar' => array(
'filter' => FILTER_VALIDATE_INT,
'flags' => FILTER_FLAG_SCALAR,
),
'testarray' => array(
'filter' => FILTER_VALIDATE_INT,
'flags' => FILTER_FLAG_ARRAY,
)
);
//$myinputs = input_get_args($args, INPUT_POST);
$myinputs = input_get_args($args, INPUT_DATA, $data);
var_dump($myinputs);
echo "\n";
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
array(6) {
["product_id"]=>
array(1) {
[0]=>
string(17) "libgd%3Cscript%3E"
}
["component"]=>
array(1) {
[0]=>
int(10)
}
["versions"]=>
array(1) {
[0]=>
string(6) "2.0.33"
}
["doesnotexist"]=>
NULL
["testscalar"]=>
bool(false)
["testarray"]=>
array(1) {
[0]=>
int(2)
}
}
]]>
</screen>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>input_get</function></member>
<member><function>filter_data</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
-->

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.2 $ -->
<!-- $Revision: 1.3 $ -->
<section id="filter.configuration">
&reftitle.runtime;
&extension.runtime;
@ -18,14 +18,14 @@
<tbody>
<row>
<entry>filter.default</entry>
<entry>string</entry>
<entry>PHP_INI_SYSTEM</entry>
<entry>unsafe_raw</entry>
<entry>PHP_INI_PERDIR</entry>
<entry></entry>
</row>
<row>
<entry>filter.default_flags</entry>
<entry></entry>
<entry>PHP_INI_SYSTEM</entry>
<entry>PHP_INI_PERDIR</entry>
<entry></entry>
</row>
</tbody>