Contributions are ready for review

From: Date: Mon, 03 Oct 2016 12:00:04 +0000
Subject: Contributions are ready for review
Groups: php.doc 
Request: Send a blank email to phpdoc+get-969386282@lists.php.net to get a copy of this message
Hello PHP EN Documentation team, There are contributions within the online editor queue for this language. Please review, then commit or delete these patches. Patches for review : ----------------------- New file: en/install/unix/litespeed.php By: rholda@litespeedtech.com on 2016-07-18 05:49:52 =================================================================== --- en/install/unix/litespeed.php +++ en/install/unix/litespeed.php @@ -0,0 +1,269 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- $Revision: 336924 $ --> +<sect1 xml:id="install.unix.litespeed" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"> + <title>LiteSpeed Web Server/OpenLiteSpeed Web Server on Unix systems</title> + + <para> + LiteSpeed PHP is an optimized compilation of PHP built to work with LiteSpeed + products through the LiteSpeed SAPI. LSPHP runs as its own process and has + its own standalone binary, which can be used as a simple command line binary to execute + PHP scripts from the command line. + </para> + + <para> + Our LSAPI is a highly optimized API that allows communication between + LiteSpeed and third party web engines. It’s protocol is similar to FCGI, but is + more efficient. + </para> + + <para> + This documentation will cover installing and configuring PHP with LSAPI + for a LiteSpeed Web Server and OpenLiteSpeed Web Server. + </para> + + <para> + This guide will assume that either LSWS or OLS is installed with their + default paths and flags. The default installation directory for both web + servers is /usr/local/lsws and both can be run from the bin subdirectory. + </para> + + <para> + Please note that throughout this documentation, version numbers have been + replaced with an ‘x’ to ensure this documentation stays correct in the future, + please replace these, as necessary, with the corresponding version numbers. + </para> + + <orderedlist> + <listitem> + <para> + To obtain and install either LiteSpeed Web Server or OpenLiteSpeed Web Server, visit our + LiteSpeed Web Server wiki + <ulink url=”https://www.litespeedtech.com/support/wiki/doku.php/litespeed_wiki:installation”>install page</ulink> + or OpenLiteSpeed wiki + <ulink url=”http://open.litespeedtech.com/mediawiki/index.php/Help:Install”>install page</ulink>. + </para> + </listitem> + + <listitem> + <para> + Obtain and unpack the php source: + </para> + + <example xml:id=”install.unix.litespeed.extract.php”> + <screen> +<![CDATA[ +mkdir /home/php +cd /home/php +wget http://us1.php.net/get/php-x.x.x.tar.gz/from/this/mirror +tar -zxvf php-x.x.x.tar.gz +cd php-x.x.x +]]> + </screen> + </example> + </listitem> + + <listitem> + <para> + Configure and build PHP. This is where PHP can be customized with various options, + such as which extensions will be enabled. Run ./configure --help for a list of available + options. In our example, we’ll use the default recommended configuration options for + LiteSpeed Web Server: + </para> + + <example xml:id=”install.unix.litespeed.build.php”> + <screen> +<![CDATA[ +./configure ... '--with-litespeed' +make +sudo make install +]]> + </screen> + </example> + </listitem> + + <listitem> + <para> + Checking The LSPHP Installation + </para> + + <para> + One of the simplest ways to check whether the installation of PHP was successful + is to run the following code: + </para> + + <example> + <screen> +<![CDATA[ +cd /usr/local/lsws/fcgi-bin/ +./lsphp5 -v +]]> + </screen> + </example> + + <para> + This should return information about the new PHP build: + </para> + + <example> + <screen> +<![CDATA[ +PHP 5.6.17 (litespeed) (built: Mar 22 2016 11:34:19) +Copyright (c) 1997-2014 The PHP Group +Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies +]]> + </screen> + </example> + + <para> + Notice the “litespeed” in parenthesis. This means that the PHP binary has been + built with LSAPI support. + </para> + </listitem> + </orderedlist> + + <para> + Following the steps above, LiteSpeed / OpenLiteSpeed Web Server should + now be running with support for PHP as an SAPI extension. There are many more + configuration options available for LSWS / OLS and PHP. For more information, + check out our wiki about + <ulink url=”https://www.litespeedtech.com/support/wiki/doku.php/litespeed_wiki:php”>PHP</ulink>. + </para> + + <para> + *Using LSPHP from the command line:* + </para> + + <para> + LSPHP(LSAPI + PHP) command line mode is used to process PHP scripts running + on a remote server that does not necessarily have a web server running. It is used + to process PHP scripts residing on a local web server (separate). This setup is + suitable for service scalability as PHP processing is offloaded to a remote server. + </para> + + <para> + *Start lsphp from the command line on a remote server:* + LSPHP is an executable and can be started manually and bound to IPv4, IPv6, or + Unix domain socket addresses with the command line option -b socket_address + </para> + + <para> + Examples: + </para> + + <para> + Have LSPHP bind to port 3000 on all IPv4 and IPv6 addresses: + </para> + + <example> + <screen> +<![CDATA[ +/path/to/lsphp -b [::]:3000 +]]> + </screen> + </example> + + <para> + Have LSPHP bind to port 3000 on all IPv4 addresses: + </para> + + <example> + <screen> +<![CDATA[ +/path/to/lsphp -b *:3000 +]]> + </screen> + </example> + + <para> + Have LSPHP bind to address 192.168.0.2:3000: + </para> + + <example> + <screen> +<![CDATA[ +/path/to/lsphp -b 192.168.0.2:3000 +]]> + </screen> + </example> + + <para> + Have LSPHP accept requests on Unix domain socket “/tmp/lsphp_manual.sock”: + </para> + + <example> + <screen> +<![CDATA[ +/path/to/lsphp -b /tmp/lsphp_manual.sock +]]> + </screen> + </example> + + <para> + Environment variables can be added before the LSPHP executable: + </para> + + <example> + <screen> +<![CDATA[ +PHP_LSAPI_MAX_REQUESTS=500 PHP_LSAPI_CHILDREN=35 /path/to/lsphp -b IP_address:port +]]> + </screen> + </example> + + <para> + Currently LiteSpeed PHP can be used with LiteSpeed Web Server, + OpenLiteSpeed Web Server, and Apache mod_lsapi. For steps on + server-side configuration, visit our wiki pages for + <ulink url=”https://www.litespeedtech.com/support/wiki/doku.php/litespeed_wiki:php:configuring-lsws-for-php”>LiteSpeed Web Server</ulink> + and <ulink url=”http://open.litespeedtech.com/mediawiki/index.php/Help:Default_PHP_Settings”>OpenLiteSpeed</ulink>. + </para> + + <para> + LSPHP can be installed in several other ways as well. + </para> + + <para> + *CentOS* + On CentOS, LSPHP can be installed from our LiteSpeed Repository or the Remi + Repository using <ulink url=”https://www.litespeedtech.com/support/wiki/doku.php/litespeed_wiki:php:rpm”>RPM</ulink>. + </para> + + <para> + *Debian* + On Debian, LSPHP can be installed from the LiteSpeed Repository using + <ulink url=”https://www.litespeedtech.com/support/wiki/doku.php/litespeed_wiki:php:apt”>apt</ulink>. + </para> + + <para> + *cPanel* + Visit our <ulink url=”https://www.litespeedtech.com/support/wiki/doku.php/litespeed_wiki:cpanel:easyapache4-config”>wiki page</ulink> + about how to install LSPHP with cPanel and LSWS/OLS using EasyApache 4. + </para> + + <para> + *Plesk* + Plesk can be used with LSPHP on CentOS, CloudLinux, Debian, and Ubuntu, + for more details on this, visit our <ulink url=”https://www.litespeedtech.com/support/wiki/doku.php/litespeed_wiki:plesk:php_guide”>wiki page</ulink> + </para> +</sect1> + +<!-- 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 +--> No newline at end of file => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=67892 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=67892 ------------------------------------------------------------------ Modified: en/internals2/opcodes/cast.xml By: Gennady Kovshenin on 2015-03-15 18:46:59 =================================================================== --- en/internals2/opcodes/cast.xml +++ en/internals2/opcodes/cast.xml @@ -8,7 +8,7 @@ <![CDATA[ <?php /* - * casts value1 as type value2 (?? Not certain about arguments ??) + * casts value1 as type value2 (type in extended_value) * opcode number: 21 */ echo (int)1; @@ -39,7 +39,7 @@ <row> <entry></entry><entry>1</entry> <entry>ECHO</entry><entry></entry> - <entry></entry><entry></entry> + <entry></entry><entry>1</entry> <entry>~0</entry> </row> <row> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=60577 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=60577 ------------------------------------------------------------------ Modified: en/language/predefined/closure/call.xml By: mail@akirakoyasu.net on 2015-06-23 07:03:03 =================================================================== --- en/language/predefined/closure/call.xml +++ en/language/predefined/closure/call.xml @@ -1,41 +1,38 @@ <?xml version="1.0" encoding="utf-8"?> -<!-- $Revision: 337372 $ --> +<!-- $Revision: 336860 $ --> <refentry xml:id="closure.call" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"> <refnamediv> <refname>Closure::call</refname> - <refpurpose>Binds and calls the closure</refpurpose> + <refpurpose>Calls the closure with the given parameters and returns the result, with $this bound to the given object $to</refpurpose> </refnamediv> <refsect1 role="description"><!-- {{{ --> &reftitle.description; <methodsynopsis> - <modifier>public</modifier> <type>mixed</type><methodname>Closure::call</methodname> - <methodparam><type>object</type><parameter>newthis</parameter></methodparam> + <modifier>public</modifier> <type>Closure</type><methodname>Closure::call</methodname> + <methodparam><type>object</type><parameter>to</parameter></methodparam> + <methodparam choice="opt"><type>mixed</type><parameter>parameter</parameter></methodparam> <methodparam choice="opt"><type>mixed</type><parameter>...</parameter></methodparam> </methodsynopsis> <para> - Temporarily binds the closure to <parameter>newthis</parameter>, and calls - it with any given parameters. + Calls the closure with the given parameters and returns the result, with $this bound to the given object + <parameter>to</parameter> </para> </refsect1><!-- }}} --> <refsect1 role="parameters"><!-- {{{ --> &reftitle.parameters; <variablelist> <varlistentry> - <term><parameter>newthis</parameter></term> + <term><parameter>to</parameter></term> <listitem> <para> - The <type>object</type> to bind the closure to for the duration of the - call. </para> </listitem> </varlistentry> <varlistentry> - <term><parameter>...</parameter></term> + <term><parameter>args</parameter></term> <listitem> <para> - Zero or more parameters, which will be given as parameters to the - closure. </para> </listitem> </varlistentry> @@ -44,9 +41,29 @@ <refsect1 role="returnvalues"><!-- {{{ --> &reftitle.returnvalues; <para> - Returns the return value of the closure. </para> </refsect1><!-- }}} --> + <refsect1 role="changelog"><!-- {{{ --> + &reftitle.changelog; + <informaltable> + <tgroup cols="2"> + <thead> + <row> + <entry>&Version;</entry> + <entry>&Description;</entry> + </row> + </thead> + <tbody> + <row> + <entry>7.0.0</entry> + <entry> + Added Closure::call + </entry> + </row> + </tbody> + </tgroup> + </informaltable> + </refsect1><!-- }}} --> <refsect1 role="examples"> &reftitle.examples; <example> @@ -54,34 +71,12 @@ <programlisting role="php"> <![CDATA[ <?php -class Value { - protected $value; - - public function __construct($value) { - $this->value = $value; - } - - public function getValue() { - return $this->value; - } -} - -$three = new Value(3); -$four = new Value(4); - -$closure = function ($delta) { var_dump($this->getValue() + $delta); }; -$closure->call($three, 4); -$closure->call($four, 4); -?> +$foo = new StdClass; +$foo->bar = 3; +$foobar = function ($qux) { var_dump($this->bar + $qux); }; +$foobar->call($foo, 4); // prints int(7) ]]> </programlisting> - &example.outputs; - <screen> -<![CDATA[ -int(7) -int(8) -]]> - </screen> </example> </refsect1> </refentry> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=63267 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=63267 ------------------------------------------------------------------ Modified: en/reference/password/functions/password-hash.xml By: Dennis Birkholz on 2015-09-26 07:25:06 =================================================================== --- en/reference/password/functions/password-hash.xml +++ en/reference/password/functions/password-hash.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> -<!-- $Revision: 338252 $ --> +<!-- $Revision: 337585 $ --> <refentry xml:id="function.password-hash" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"> <refnamediv> @@ -41,37 +41,39 @@ create the hash. This will produce a standard <function>crypt</function> compatible hash using the "$2y$" identifier. The result will always be a 60 character string, &return.falseforfailure;. </simpara> + </listitem> + </itemizedlist> + </para> + <simpara> + Supported Options: + </simpara> + <para> + <itemizedlist> + <listitem> <para> - Supported Options: + <literal>salt</literal> - to manually provide a salt to use when hashing the password. + Note that this will override and prevent a salt from being automatically generated. + </para> + <para> + If omitted, a random salt will be generated by <function>password_hash</function> for + each password hashed. This is the intended mode of operation. + </para> + <warning> + <para> + The salt option has been deprecated as of PHP 7.0.0. It is now + preferred to simply use the salt that is generated by default. + </para> + </warning> + </listitem> + <listitem> + <para> + <literal>cost</literal> - which denotes the algorithmic cost that should be used. + Examples of these values can be found on the <function>crypt</function> page. + </para> + <para> + If omitted, a default value of <literal>10</literal> will be used. This is a good + baseline cost, but you may want to consider increasing it depending on your hardware. </para> - <itemizedlist> - <listitem> - <para> - <literal>salt</literal> - to manually provide a salt to use when hashing the password. - Note that this will override and prevent a salt from being automatically generated. - </para> - <para> - If omitted, a random salt will be generated by <function>password_hash</function> for - each password hashed. This is the intended mode of operation. - </para> - <warning> - <para> - The salt option has been deprecated as of PHP 7.0.0. It is now - preferred to simply use the salt that is generated by default. - </para> - </warning> - </listitem> - <listitem> - <para> - <literal>cost</literal> - which denotes the algorithmic cost that should be used. - Examples of these values can be found on the <function>crypt</function> page. - </para> - <para> - If omitted, a default value of <literal>10</literal> will be used. This is a good - baseline cost, but you may want to consider increasing it depending on your hardware. - </para> - </listitem> - </itemizedlist> </listitem> </itemizedlist> </para> @@ -88,8 +90,8 @@ </para> <caution> <para> - Using the <constant>PASSWORD_BCRYPT</constant> as the - algorithm, will result + Using the <constant>PASSWORD_BCRYPT</constant> for the + <parameter>algo</parameter> parameter, will result in the <parameter>password</parameter> parameter being truncated to a maximum length of 72 characters. </para> @@ -254,14 +256,8 @@ &reftitle.notes; <caution> <para> - It is strongly recommended that you do not generate your own salt for this - function. It will create a secure salt automatically for you if you do - not specify one. - </para> - <para> - As noted above, providing the <literal>salt</literal> option in PHP 7.0 - will generate a deprecation warning. Support for providing a salt manually - may be removed in a future PHP release. + It is strongly recommended that you do not generate your own salt for this function. + It will create a secure salt automatically for you if you do not specify one. </para> </caution> <note> @@ -279,19 +275,16 @@ <para> <itemizedlist> <listitem> - <simpara> - Any new algorithm must be in core for at least 1 full release of PHP - prior to becoming default. So if, for example, a new algorithm is added - in 7.5.5, it would not be eligible for default until 7.7 (since 7.6 - would be the first full release). But if a different algorithm was added - in 7.6.0, it would also be eligible for default at 7.7.0. + <simpara>Any new algorithm must be in core for at least 1 full release of PHP prior to becoming + default. So if, for example, a new algorithm is added in 5.5.5, it would not be eligible for + default until 5.7 (since 5.6 would be the first full release). But if a different algorithm was + added in 5.6.0, it would also be eligible for default at 5.7.0. </simpara> </listitem> <listitem> <simpara> - The default should only change in a full release (7.3.0, 8.0.0, etc) - and not in a revision release. The only exception to this is in an - emergency when a critical security flaw is found in the current + The default should only change on a full release (5.6.0, 6.0.0, etc) and not on a revision release. + The only exception to this is in an emergency when a critical security flaw is found in the current default. </simpara> </listitem> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=65016 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=65016 ------------------------------------------------------------------ Modified: en/reference/pdo/pdostatement/errorinfo.xml By: Daniel on 2015-09-27 04:13:34 =================================================================== --- en/reference/pdo/pdostatement/errorinfo.xml +++ en/reference/pdo/pdostatement/errorinfo.xml @@ -48,6 +48,14 @@ </tgroup> </informaltable> </para> + + <note> + <para> + If the SQLSTATE error code is not set or there is no driver-specific + error, the elements following element 0 will be set to &null;. + </para> + </note> + </refsect1> <refsect1 role="examples"> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=65020 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=65020 ------------------------------------------------------------------ Modified: en/reference/pdo/pdoexception.xml By: Daniel on 2015-10-19 00:31:06 =================================================================== --- en/reference/pdo/pdoexception.xml +++ en/reference/pdo/pdoexception.xml @@ -49,11 +49,6 @@ <type>array</type> <varname linkend="pdoexception.props.errorinfo">errorInfo</varname> </fieldsynopsis><!-- }}} --> - <fieldsynopsis><!-- {{{ code --> - <modifier>protected</modifier> - <type>string</type> - <varname linkend="pdoexception.props.code">code</varname> - </fieldsynopsis><!-- }}} --> <classsynopsisinfo role="comment">&InheritedProperties;</classsynopsisinfo> <xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('exception.synopsis')/descendant::db:fieldsynopsis)" /> @@ -81,15 +76,6 @@ </para> </listitem> </varlistentry><!-- }}} --> - <varlistentry xml:id="pdoexception.props.code"><!-- {{{ --> - <term><varname>code</varname></term> - <listitem> - <para> - <literal>SQLSTATE</literal> error code. Use - <function>Exception::getCode</function> to access it. - </para> - </listitem> - </varlistentry><!-- }}} --> </variablelist> </section> <!-- }}} --> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=65238 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=65238 ------------------------------------------------------------------ Modified: en/reference/strings/functions/htmlentities.xml By: Hans Henrik Bergan on 2015-10-26 02:52:36 =================================================================== --- en/reference/strings/functions/htmlentities.xml +++ en/reference/strings/functions/htmlentities.xml @@ -151,7 +151,7 @@ If the input <parameter>string</parameter> contains an invalid code unit sequence within the given <parameter>encoding</parameter> an empty string will be returned, unless either the <constant>ENT_IGNORE</constant> or - <constant>ENT_SUBSTITUTE</constant> flags are set. + <constant>ENT_SUBSTITUTE</constant> or <constant>ENT_DISALLOWED</constant> flags are set. </para> </refsect1> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=65273 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=65273 ------------------------------------------------------------------ Modified: en/reference/ibase/functions/ibase-prepare.xml By: DSanchez on 2015-11-14 07:45:03 =================================================================== --- en/reference/ibase/functions/ibase-prepare.xml +++ en/reference/ibase/functions/ibase-prepare.xml @@ -10,19 +10,9 @@ &reftitle.description; <methodsynopsis> <type>resource</type><methodname>ibase_prepare</methodname> - <methodparam><type>string</type><parameter>query</parameter></methodparam> - </methodsynopsis> - <methodsynopsis> - <type>resource</type><methodname>ibase_prepare</methodname> <methodparam><type>resource</type><parameter>link_identifier</parameter></methodparam> <methodparam><type>string</type><parameter>query</parameter></methodparam> </methodsynopsis> - <methodsynopsis> - <type>resource</type><methodname>ibase_prepare</methodname> - <methodparam><type>resource</type><parameter>link_identifier</parameter></methodparam> - <methodparam><type>string</type><parameter>trans</parameter></methodparam> - <methodparam><type>string</type><parameter>query</parameter></methodparam> - </methodsynopsis> <simpara> Prepare a query for later binding of parameter placeholders and execution (via <function>ibase_execute</function>). @@ -34,6 +24,14 @@ <para> <variablelist> <varlistentry> + <term><parameter>link_identifier</parameter></term> + <listitem> + <para> + An InterBase link identifier. + </para> + </listitem> + </varlistentry> + <varlistentry> <term><parameter>query</parameter></term> <listitem> <para> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=65435 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=65435 ------------------------------------------------------------------ Modified: en/reference/pdo/pdostatement/execute.xml By: Oscar Merida on 2015-11-19 19:38:41 =================================================================== --- en/reference/pdo/pdostatement/execute.xml +++ en/reference/pdo/pdostatement/execute.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> -<!-- $Revision: 338832 $ --> +<!-- $Revision: 334762 $ --> <refentry xml:id="pdostatement.execute" xmlns="http://docbook.org/ns/docbook"> <refnamediv> <refname>PDOStatement::execute</refname> @@ -14,18 +14,13 @@ <methodparam choice="opt"><type>array</type><parameter>input_parameters</parameter></methodparam> </methodsynopsis> <para> - Execute the <link linkend="pdo.prepared-statements">prepared - statement</link>. If the prepared statement included parameter markers, you - must either: + Execute the prepared statement. If the prepared statement included + parameter markers, either: <itemizedlist> - <listitem><para>call <function>PDOStatement::bindParam</function> and/or - <function>PDOStatement::bindValue</function> to bind either variables or - values (respectively) to the parameter markers. Bound variables pass - their value as input and receive the output value, if any, of their - associated parameter markers</para></listitem> - <listitem> - <para>or pass an array of input-only parameter values</para> - </listitem> + <listitem><para>call <function>PDOStatement::bindParam</function> to bind PHP variables + to the parameter markers: bound variables pass their value as input and receive the + output value, if any, of their associated parameter markers</para></listitem> + <listitem><para>or pass an array of input-only parameter values</para></listitem> </itemizedlist> </para> </refsect1> @@ -43,12 +38,11 @@ All values are treated as <constant>PDO::PARAM_STR</constant>. </para> <para> - You cannot bind multiple values to a single parameter; for example, - you cannot bind two values to a single named parameter in an IN() - clause. + Multiple values cannot bind to a single parameter; for example, + a single named parameter in an IN() clause cannot bind to two values. </para> <para> - You cannot bind more values than specified; if more keys exist in + Binding more values than specified is not possible; if more keys exist in <parameter>input_parameters</parameter> than in the SQL specified in the <methodname>PDO::prepare</methodname>, then the statement will fail and an error is emitted. @@ -93,18 +87,18 @@ <refsect1 role="examples"> &reftitle.examples; - <example><title>Execute a prepared statement with a bound variable and value</title> + <example><title>Execute a prepared statement with bound variables</title> <programlisting role="php"> <![CDATA[ <?php -/* Execute a prepared statement by binding a variable and value */ +/* Execute a prepared statement by binding PHP variables */ $calories = 150; -$colour = 'gre'; +$colour = 'red'; $sth = $dbh->prepare('SELECT name, colour, calories FROM fruit - WHERE calories < :calories AND colour LIKE :colour'); + WHERE calories < :calories AND colour = :colour'); $sth->bindParam(':calories', $calories, PDO::PARAM_INT); -$sth->bindValue(':colour', "%{$colour}%"); +$sth->bindParam(':colour', $colour, PDO::PARAM_STR, 12); $sth->execute(); ?> ]]> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=65473 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=65473 ------------------------------------------------------------------ Modified: en/reference/stream/functions/stream-socket-enable-crypto.xml By: Stéphane HULARD on 2016-02-22 02:15:43 =================================================================== --- en/reference/stream/functions/stream-socket-enable-crypto.xml +++ en/reference/stream/functions/stream-socket-enable-crypto.xml @@ -57,11 +57,19 @@ <listitem><simpara><constant>STREAM_CRYPTO_METHOD_SSLv2_CLIENT</constant></simpara></listitem> <listitem><simpara><constant>STREAM_CRYPTO_METHOD_SSLv3_CLIENT</constant></simpara></listitem> <listitem><simpara><constant>STREAM_CRYPTO_METHOD_SSLv23_CLIENT</constant></simpara></listitem> + <listitem><simpara><constant>STREAM_CRYPTO_METHOD_ANY_CLIENT</constant></simpara></listitem> <listitem><simpara><constant>STREAM_CRYPTO_METHOD_TLS_CLIENT</constant></simpara></listitem> + <listitem><simpara><constant>STREAM_CRYPTO_METHOD_TLSv1_0_CLIENT</constant></simpara></listitem> + <listitem><simpara><constant>STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT</constant></simpara></listitem> + <listitem><simpara><constant>STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT</constant></simpara></listitem> <listitem><simpara><constant>STREAM_CRYPTO_METHOD_SSLv2_SERVER</constant></simpara></listitem> <listitem><simpara><constant>STREAM_CRYPTO_METHOD_SSLv3_SERVER</constant></simpara></listitem> <listitem><simpara><constant>STREAM_CRYPTO_METHOD_SSLv23_SERVER</constant></simpara></listitem> + <listitem><simpara><constant>STREAM_CRYPTO_METHOD_ANY_SERVER</constant></simpara></listitem> <listitem><simpara><constant>STREAM_CRYPTO_METHOD_TLS_SERVER</constant></simpara></listitem> + <listitem><simpara><constant>STREAM_CRYPTO_METHOD_TLSv1_0_SERVER</constant></simpara></listitem> + <listitem><simpara><constant>STREAM_CRYPTO_METHOD_TLSv1_1_SERVER</constant></simpara></listitem> + <listitem><simpara><constant>STREAM_CRYPTO_METHOD_TLSv1_2_SERVER</constant></simpara></listitem> </itemizedlist> </para> <para> @@ -106,6 +114,12 @@ <row> <entry>5.6.0</entry> <entry> + Introduce <constant>STREAM_CRYPTO_METHOD_ANY_CLIENT</constant>, <constant>STREAM_CRYPTO_METHOD_TLSv1_0_CLIENT</constant>, <constant>STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT</constant>, <constant>STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT</constant>, <constant>STREAM_CRYPTO_METHOD_ANY_SERVER</constant>, <constant>STREAM_CRYPTO_METHOD_TLSv1_0_SERVER</constant>, <constant>STREAM_CRYPTO_METHOD_TLSv1_1_SERVER</constant>, <constant>STREAM_CRYPTO_METHOD_TLSv1_2_SERVER</constant>. + </entry> + </row> + <row> + <entry>5.6.0</entry> + <entry> The <parameter>crypto_type</parameter> is now optional. </entry> </row> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=66270 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=66270 ------------------------------------------------------------------ Modified: en/reference/errorfunc/functions/set-error-handler.xml By: Oli Griffiths on 2016-02-26 08:43:36 =================================================================== --- en/reference/errorfunc/functions/set-error-handler.xml +++ en/reference/errorfunc/functions/set-error-handler.xml @@ -56,6 +56,16 @@ custom error handler cannot be called since it is not registered at that time. </para> + + <note> + <para> + If a custom error handler is not registered, <constant>E_RECOVERABLE</constant> errors are promoted to <constant>E_ERROR</constant> + and WILL cause the engine to stop executing. + However if a custom error handler is registered, <constant>E_RECOVERABLE</constant> (for example: typehint) errors will NOT cause the engine to stop executing, + and requires custom handling within the registered error handler. + See <link linkend="errorfunc.constants#errorfunc.constants.errorlevels.e-recoverable-error">error constants</link> + </para> + </note> </refsect1> <refsect1 role="parameters"> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=66342 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=66342 ------------------------------------------------------------------ Modified: en/reference/bc/book.xml By: Hans Henrik Bergan on 2016-02-29 09:37:04 =================================================================== --- en/reference/bc/book.xml +++ en/reference/bc/book.xml @@ -11,7 +11,7 @@ &reftitle.intro; <para> For arbitrary precision mathematics PHP offers the Binary Calculator which - supports numbers of any size and precision, represented as strings. + supports numbers of any size and precision up to 2147483647-1 (or 0x7FFFFFFF-1) decimals, represented as strings. </para> </preface> <!-- }}} --> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=66350 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=66350 ------------------------------------------------------------------ Modified: en/reference/array/functions/array-map.xml By: Pierre-Chanel Gauthier on 2016-03-02 02:10:45 =================================================================== --- en/reference/array/functions/array-map.xml +++ en/reference/array/functions/array-map.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> -<!-- $Revision: 339528 $ --> +<!-- $Revision: 333185 $ --> <refentry xmlns="http://docbook.org/ns/docbook" xml:id="function.array-map"> <refnamediv> <refname>array_map</refname> @@ -32,9 +32,29 @@ <varlistentry> <term><parameter>callback</parameter></term> <listitem> - <para> - Callback function to run for each element in each array. - </para> + <methodsynopsis> + <type>mixed</type><methodname><replaceable>callback</replaceable></methodname> + <methodparam><type>mixed</type><parameter>item1</parameter></methodparam> + <methodparam choice="opt"><type>mixed</type><parameter>itemN</parameter></methodparam> + </methodsynopsis> + <variablelist> + <varlistentry> + <term><parameter>item1</parameter></term> + <listitem> + <para> + Holds the element of the current iteration for <parameter>array1</parameter>. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>itemN</parameter></term> + <listitem> + <para> + Holds the element of the current iteration for <parameter>arrayN</parameter>. + </para> + </listitem> + </varlistentry> + </variablelist> </listitem> </varlistentry> <varlistentry> @@ -276,9 +296,10 @@ </example> </para> <para> - The returned array will preserve the keys of the array argument if and only - if exactly one array is passed. If more than one array is passed, the - returned array will have sequential integer keys. + If the array argument contains string keys then the returned array + will contain string keys if and only if exactly one array is passed. If + more than one argument is passed then the returned array always has + integer keys. </para> <para> <example> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=66360 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=66360 ------------------------------------------------------------------ Modified: en/appendices/migration70/incompatible/other.xml By: Matthieu Napoli on 2016-03-21 02:47:47 =================================================================== --- en/appendices/migration70/incompatible/other.xml +++ en/appendices/migration70/incompatible/other.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> -<!-- $Revision: 339817 $ --> +<!-- $Revision: 338409 $ --> <sect2 xml:id="migration70.incompatible.other"> <title>Other backward incompatible changes</title> @@ -151,7 +151,7 @@ ?> ]]> </programlisting> - &example.outputs.56; + &example.outputs.5; <screen> <![CDATA[ Deprecated: Non-static method A::test() should not be called statically, assuming $this from incompatible context in /tmp/test.php on line 8 @@ -228,42 +228,6 @@ </informalexample> </sect3> - <sect3 xml:id="migration70.incompatible.other.func-parameter-modified"> - <title>Functions inspecting arguments report the <emphasis>current</emphasis> parameter value</title> - - <para> - <function> func_get_arg</function>, <function>func_get_args</function>, - <function>debug_backtrace</function> and exception backtraces will no longer - report the original value that was passed to a parameter, but will instead - provide the current value (which might have been modified). - </para> - - <informalexample> - <programlisting role="php"> -<![CDATA[ -<?php -function foo($x) { - $x++; - var_dump(func_get_arg(0)); -} -foo(1);?> -]]> - </programlisting> - &example.outputs.5; - <screen> -<![CDATA[ -1 -]]> - </screen> - &example.outputs.7; - <screen> -<![CDATA[ -2 -]]> - </screen> - </informalexample> - </sect3> - <sect3 xml:id="migration70.incompatible.other.multiple-default"> <title>Switch statements cannot have multiple default blocks</title> @@ -314,13 +278,14 @@ <title>JSON extension replaced with JSOND</title> <para> - The JSON extension has been replaced with JSOND, causing two minor BC + The JSON extension has been replaced with JSOND, causing 3 minor BC breaks. Firstly, a number must not end in a decimal point (i.e. <literal>34.</literal> must be changed to either <literal>34.0</literal> or <literal>34</literal>). Secondly, when using scientific notation, the <literal>e</literal> exponent must not immediately follow a decimal point (i.e. <literal>3.e3</literal> must be changed to either - <literal>3.0e3</literal> or <literal>3e3</literal>). + <literal>3.0e3</literal> or <literal>3e3</literal>). Finally an empty + string is no longer considered as valid JSON. </para> </sect3> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=66508 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=66508 ------------------------------------------------------------------ Modified: en/reference/strings/functions/explode.xml By: Jay Paroline on 2016-03-23 17:21:38 =================================================================== --- en/reference/strings/functions/explode.xml +++ en/reference/strings/functions/explode.xml @@ -150,8 +150,10 @@ */ $input1 = "hello"; $input2 = "hello,there"; +$input3 = ','; var_dump( explode( ',', $input1 ) ); var_dump( explode( ',', $input2 ) ); +var_dump( explode( ',', $input3 ) ); ?> ]]> @@ -168,6 +170,11 @@ [0] => string(5) "hello" [1] => string(5) "there" ) +array(2) +( + [0] => string(0) "" + [1] => string(0) "" +) ]]> </screen> </example> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=66522 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=66522 ------------------------------------------------------------------ Modified: en/reference/array/functions/array-filter.xml By: Jesse Donat on 2016-04-04 10:13:45 =================================================================== --- en/reference/array/functions/array-filter.xml +++ en/reference/array/functions/array-filter.xml @@ -240,6 +240,12 @@ added, deleted or unset) the behavior of this function is undefined. </para> </caution> + + <caution> + <para> + As of PHP7 the value of the callback may no longer be used by reference. + </para> + </caution> </refsect1> <refsect1 role="seealso"> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=66717 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=66717 ------------------------------------------------------------------ Modified: en/reference/sockets/functions/socket-sendmsg.xml By: mekras on 2016-04-18 05:48:21 =================================================================== --- en/reference/sockets/functions/socket-sendmsg.xml +++ en/reference/sockets/functions/socket-sendmsg.xml @@ -8,7 +8,7 @@ <refsect1 role="description"> &reftitle.description; <methodsynopsis> - <type>int</type><methodname>socket_sendmsg</methodname> + <type>mixed</type><methodname>socket_sendmsg</methodname> <methodparam><type>resource</type><parameter>socket</parameter></methodparam> <methodparam><type>array</type><parameter>message</parameter></methodparam> <methodparam><type>int</type><parameter>flags</parameter></methodparam> @@ -50,6 +50,7 @@ <refsect1 role="returnvalues"> &reftitle.returnvalues; <para> + Returns the number of characters sent, or &false; on failure. </para> </refsect1> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=66964 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=66964 ------------------------------------------------------------------ Modified: en/reference/pdo_4d/examples.xml By: Tim Penner on 2016-06-24 14:37:14 =================================================================== --- en/reference/pdo_4d/examples.xml +++ en/reference/pdo_4d/examples.xml @@ -94,8 +94,8 @@ </para> <programlisting role="4d"> <![CDATA[ -C_TEXTE($0) -$0:=Version application(*); +C_TEXT($0) +$0:=Application Version(*) ]]> </programlisting> <para> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=67512 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=67512 ------------------------------------------------------------------ Modified: en/reference/funchand/functions/call-user-func-array.xml By: Esteban Marín on 2016-06-28 05:16:21 =================================================================== --- en/reference/funchand/functions/call-user-func-array.xml +++ en/reference/funchand/functions/call-user-func-array.xml @@ -165,6 +165,34 @@ ]]> </screen> </example> + <example> + <title>Passing values by reference</title> + <programlisting role="php"> +<![CDATA[ +<?php + +ini_set('display_errors',1); +ini_set('error_reporting',E_ALL | E_STRICT); + +function mega(&$a){ + $a = 55; + echo 'function mega $a='.$a; +} +$bar = 77; +call_user_func_array('mega',array(&$bar)); +echo 'global $bar='.$bar; + +?> +]]> + </programlisting> + &example.outputs; + <screen> +<![CDATA[ +function mega $a=55 +global $bar=55 +]]> + </screen> + </example> </para> </refsect1> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=67544 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=67544 ------------------------------------------------------------------ Modified: en/reference/ldap/functions/ldap-set-option.xml By: Chad Sikorra on 2016-07-04 17:26:34 =================================================================== --- en/reference/ldap/functions/ldap-set-option.xml +++ en/reference/ldap/functions/ldap-set-option.xml @@ -97,6 +97,11 @@ <entry></entry> </row> <row> + <entry><constant>LDAP_OPT_DIAGNOSTIC_MESSAGE</constant></entry> + <entry>string</entry> + <entry></entry> + </row> + <row> <entry><constant>LDAP_OPT_MATCHED_DN</constant></entry> <entry>string</entry> <entry></entry> @@ -111,6 +116,76 @@ <entry>array</entry> <entry></entry> </row> + <row> + <entry><constant>LDAP_OPT_X_KEEPALIVE_IDLE</constant></entry> + <entry>int</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_KEEPALIVE_PROBES</constant></entry> + <entry>int</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_KEEPALIVE_INTERVAL</constant></entry> + <entry>int</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_CACERTDIR</constant></entry> + <entry>string</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_CACERTFILE</constant></entry> + <entry>string</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_CERTFILE</constant></entry> + <entry>string</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_CIPHER_SUITE</constant></entry> + <entry>string</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_CRLCHECK</constant></entry> + <entry>integer</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_CRLFILE</constant></entry> + <entry>string</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_DHFILE</constant></entry> + <entry>string</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_KEYILE</constant></entry> + <entry>string</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_PROTOCOL_MIN</constant></entry> + <entry>integer</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_RANDOM_FILE</constant></entry> + <entry>string</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_REQUIRE_CERT</constant></entry> + <entry>integer</entry> + <entry></entry> + </row> </tbody> </tgroup> </informaltable> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=67619 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=67619 ------------------------------------------------------------------ Modified: en/reference/ldap/functions/ldap-get-option.xml By: Chad Sikorra on 2016-07-04 17:41:12 =================================================================== --- en/reference/ldap/functions/ldap-get-option.xml +++ en/reference/ldap/functions/ldap-get-option.xml @@ -97,6 +97,81 @@ <entry><constant>LDAP_OPT_CLIENT_CONTROLS</constant></entry> <entry>array</entry> </row> + <row> + <entry><constant>LDAP_OPT_X_KEEPALIVE_IDLE</constant></entry> + <entry>int</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_KEEPALIVE_PROBES</constant></entry> + <entry>int</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_KEEPALIVE_INTERVAL</constant></entry> + <entry>int</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_CACERTDIR</constant></entry> + <entry>string</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_CACERTFILE</constant></entry> + <entry>string</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_CERTFILE</constant></entry> + <entry>string</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_CIPHER_SUITE</constant></entry> + <entry>string</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_CRLCHECK</constant></entry> + <entry>integer</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_CRLFILE</constant></entry> + <entry>string</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_DHFILE</constant></entry> + <entry>string</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_KEYILE</constant></entry> + <entry>string</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_PACKAGE</constant></entry> + <entry>string</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_PROTOCOL_MIN</constant></entry> + <entry>integer</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_RANDOM_FILE</constant></entry> + <entry>string</entry> + <entry></entry> + </row> + <row> + <entry><constant>LDAP_OPT_X_TLS_REQUIRE_CERT</constant></entry> + <entry>integer</entry> + <entry></entry> + </row> </tbody> </tgroup> </informaltable> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=67620 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=67620 ------------------------------------------------------------------ Modified: en/reference/ldap/constants.xml By: Chad Sikorra on 2016-07-04 17:46:23 =================================================================== --- en/reference/ldap/constants.xml +++ en/reference/ldap/constants.xml @@ -177,6 +177,17 @@ </simpara> </listitem> </varlistentry> + <varlistentry xml:id="constant.ldap-opt-diagnostic-message"> + <term> + <constant>LDAP_OPT_DIAGNOSTIC_MESSAGE</constant> + (<type>integer</type>) + </term> + <listitem> + <simpara> + + </simpara> + </listitem> + </varlistentry> <varlistentry xml:id="constant.ldap-opt-matched-dn"> <term> <constant>LDAP_OPT_MATCHED_DN</constant> @@ -221,6 +232,176 @@ </simpara> </listitem> </varlistentry> + <varlistentry xml:id="constant.ldap-opt-x-keepalive-idle"> + <term> + <constant>LDAP_OPT_X_KEEPALIVE_IDLE</constant> + (<type>integer</type>) + </term> + <listitem> + <simpara> + Specifies the number of seconds a connection needs to remain idle before TCP starts sending keepalive probes. + </simpara> + </listitem> + </varlistentry> + <varlistentry xml:id="constant.ldap-opt-x-keepalive-probes"> + <term> + <constant>LDAP_OPT_X_KEEPALIVE_PROBES</constant> + (<type>integer</type>) + </term> + <listitem> + <simpara> + Specifies the maximum number of keepalive probes TCP should send before dropping the connection. + </simpara> + </listitem> + </varlistentry> + <varlistentry xml:id="constant.ldap-opt-x-keepalive-interval"> + <term> + <constant>LDAP_OPT_X_KEEPALIVE_INTERVAL</constant> + (<type>integer</type>) + </term> + <listitem> + <simpara> + Specifies the interval in seconds between individual keepalive probes. + </simpara> + </listitem> + </varlistentry> + <varlistentry xml:id="constant.ldap-opt-x-tls-cacertdir"> + <term> + <constant>LDAP_OPT_X_TLS_CACERTDIR</constant> + (<type>string</type>) + </term> + <listitem> + <simpara> + Specifies the path of the directory containing CA certificates. + </simpara> + </listitem> + </varlistentry> + <varlistentry xml:id="constant.ldap-opt-x-tls-cacertfile"> + <term> + <constant>LDAP_OPT_X_TLS_CACERTFILE</constant> + (<type>string</type>) + </term> + <listitem> + <simpara> + Specifies the full-path of the CA certificate file. + </simpara> + </listitem> + </varlistentry> + <varlistentry xml:id="constant.ldap-opt-x-tls-certfile"> + <term> + <constant>LDAP_OPT_X_TLS_CERTFILE</constant> + (<type>string</type>) + </term> + <listitem> + <simpara> + Specifies the full-path of the certificate file. + </simpara> + </listitem> + </varlistentry> + <varlistentry xml:id="constant.ldap-opt-x-tls-cipher-suite"> + <term> + <constant>LDAP_OPT_X_TLS_CIPHER_SUITE</constant> + (<type>string</type>) + </term> + <listitem> + <simpara> + Specifies the allowed cipher suite. + </simpara> + </listitem> + </varlistentry> + <varlistentry xml:id="constant.ldap-opt-x-tls-crl-check"> + <term> + <constant>LDAP_OPT_X_TLS_CRL_CHECK</constant> + (<type>integer</type>) + </term> + <listitem> + <simpara> + Specifies the CRL evaluation strategy. This must be one of: <constant>LDAP_OPT_X_TLS_CRL_NONE</constant>,<constant>LDAP_OPT_X_TLS_CRL_PEER</constant>, <constant>LDAP_OPT_X_TLS_CRL_ALL</constant>. + </simpara> + <note> + <simpara> + This option is only valid for OpenSSL. + </simpara> + </note> + </listitem> + </varlistentry> + <varlistentry xml:id="constant.ldap-opt-x-tls-crlfile"> + <term> + <constant>LDAP_OPT_X_TLS_CRLFILE</constant> + (<type>string</type>) + </term> + <listitem> + <simpara> + Specifies the full-path of the CRL file. + </simpara> + <note> + <simpara> + This option is only valid for GnuTLS. + </simpara> + </note> + </listitem> + </varlistentry> + <varlistentry xml:id="constant.ldap-opt-x-tls-dhfile"> + <term> + <constant>LDAP_OPT_X_TLS_DHFILE</constant> + (<type>string</type>) + </term> + <listitem> + <simpara> + Specifies the full-path of the file containing the parameters for Diffie-Hellman ephemeral key exchange. + </simpara> + <note> + <simpara> + This option is ignored by GnuTLS and Mozilla NSS. + </simpara> + </note> + </listitem> + </varlistentry> + <varlistentry xml:id="constant.ldap-opt-x-tls-keyfile"> + <term> + <constant>LDAP_OPT_X_TLS_KEYFILE</constant> + (<type>string</type>) + </term> + <listitem> + <simpara> + Specifies the full-path of the certificate key file. + </simpara> + </listitem> + </varlistentry> + <varlistentry xml:id="constant.ldap-opt-x-tls-protocol-min"> + <term> + <constant>LDAP_OPT_X_TLS_PROTOCOL_MIN</constant> + (<type>integer</type>) + </term> + <listitem> + <simpara> + Specifies the minimum protocol version. This can be one of: <constant>LDAP_OPT_X_TLS_PROTOCOL_SSL2</constant>,<constant>LDAP_OPT_X_TLS_PROTOCOL_SSL3</constant>, <constant>LDAP_OPT_X_TLS_PROTOCOL_TLS1_0</constant>, <constant>LDAP_OPT_X_TLS_PROTOCOL_TLS1_1</constant>, <constant>LDAP_OPT_X_TLS_PROTOCOL_TLS1_2</constant> + </simpara> + </listitem> + </varlistentry> + <varlistentry xml:id="constant.ldap-opt-x-tls-random-file"> + <term> + <constant>LDAP_OPT_X_TLS_RANDOM_FILE</constant> + (<type>string</type>) + </term> + <listitem> + <simpara> + + </simpara> + </listitem> + </varlistentry> + <varlistentry xml:id="constant.ldap-opt-x-tls-require-cert"> + <term> + <constant>LDAP_OPT_X_TLS_REQUIRE_CERT</constant> + (<type>integer</type>) + </term> + <listitem> + <simpara> + Specifies the certificate checking checking strategy. This must be one of: <constant>LDAP_OPT_X_TLS_NEVER</constant>,<constant>LDAP_OPT_X_TLS_HARD</constant>, <constant>LDAP_OPT_X_TLS_DEMAND</constant>, +<constant>LDAP_OPT_X_TLS_ALLOW</constant>, <constant>LDAP_OPT_X_TLS_TRY</constant>. + </simpara> + </listitem> + </varlistentry> <varlistentry xml:id="constant.gslc-ssl-no-auth"> <term> <constant>GSLC_SSL_NO_AUTH</constant> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=67618 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=67618 ------------------------------------------------------------------ Modified: en/reference/memcache/memcache/get.xml By: anonymous on 2016-08-17 19:12:52 =================================================================== --- en/reference/memcache/memcache/get.xml +++ en/reference/memcache/memcache/get.xml @@ -20,8 +20,8 @@ </methodsynopsis> <para> - <function>Memcache::get</function> returns previously stored data if - an item with such <parameter>key</parameter> exists on the server at this + <function>Memcache::get</function> returns previously stored data of + an item, if such <parameter>key</parameter> exists on the server at this moment. </para> @@ -62,7 +62,7 @@ <refsect1 role="returnvalues"> &reftitle.returnvalues; <para> - Returns the string associated with the <parameter>key</parameter> or + Returns the value associated with the <parameter>key</parameter> or an array of found key-value pairs when <parameter>key</parameter> is an <type>array</type>. Returns &false; on failure, <parameter>key</parameter> is not found or <parameter>key</parameter> is an empty <type>array</type>. => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=68079 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=68079 ------------------------------------------------------------------ Modified: en/internals2/variables/index.xml By: anonymous on 2016-09-03 13:40:05 =================================================================== --- en/internals2/variables/index.xml +++ en/internals2/variables/index.xml @@ -15,7 +15,7 @@ </note> <para> To clarify what exactly is meant by the statement above: PHP is a high level language, weak typing is implicit of the engines preference to - convert, or coerce variables into the required type at execution type. Reference counting is the means by which the engine can deduce when a + convert, or coerce variables into the required type at execution time. Reference counting is the means by which the engine can deduce when a variable no longer has any references in the users code, and so is able to free the structures associated with the variable. </para> <para> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=68186 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=68186 ------------------------------------------------------------------ Modified: en/reference/apcu/functions/apcu-delete.xml By: Andrew Nicols on 2016-09-19 19:19:24 =================================================================== --- en/reference/apcu/functions/apcu-delete.xml +++ en/reference/apcu/functions/apcu-delete.xml @@ -10,8 +10,8 @@ <refsect1 role="description"> &reftitle.description; <methodsynopsis> - <type>mixed</type><methodname>apcu_delete</methodname> - <methodparam><type>string</type><parameter>key</parameter></methodparam> + <type>bool</type><methodname>apcu_delete</methodname> + <methodparam><type>mixed</type><parameter>key</parameter></methodparam> </methodsynopsis> <para> Removes a stored variable from the cache. @@ -24,10 +24,12 @@ <varlistentry> <term><parameter>key</parameter></term> <listitem> - <para> - The <parameter>key</parameter> used to store the value (with - <function>apcu_store</function>). - </para> + <para> + A <parameter>key</parameter> used to store the value as a + <type>string</type> for a single key, + or as an <type>array</type> of strings for several keys, + or as an <classname>APCUIterator</classname> <type>object</type>. + </para> </listitem> </varlistentry> </variablelist> @@ -52,6 +54,12 @@ apcu_store('foo', $bar); apcu_delete('foo'); // this is obviously useless in this form + +// Alternatively delete multiple keys. +apcu_delete(['foo', 'bar', 'baz']); + +// Or use an Iterator with a regular expression. +apcu_delete(new APCUIterator('#^myprefix_#')); ?> ]]> </programlisting> @@ -65,6 +73,8 @@ <simplelist> <member><function>apcu_store</function></member> <member><function>apcu_fetch</function></member> + <member><function>apcu_clear_cache</function></member> + <member><classname>APCUIterator</classname></member> </simplelist> </para> </refsect1> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=68479 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=68479 ------------------------------------------------------------------ Modified: en/appendices/migration71/other-changes.xml By: anonymous on 2016-09-26 08:59:16 =================================================================== --- en/appendices/migration71/other-changes.xml +++ en/appendices/migration71/other-changes.xml @@ -70,7 +70,7 @@ Whilst <literal>$this</literal> is considered a special variable in PHP, it lacked proper checks to ensure it wasn't used as a variable name or reassigned. This has now been rectified to ensure that - <literal>$this</literal>cannot be a user-defined variable, reassigned to a + <literal>$this</literal> cannot be a user-defined variable, reassigned to a different value, or be globalised. </para> </sect2> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=68635 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=68635 ------------------------------------------------------------------ Modified: en/reference/info/functions/getopt.xml By: rjhdby on 2016-09-28 12:19:39 =================================================================== --- en/reference/info/functions/getopt.xml +++ en/reference/info/functions/getopt.xml @@ -12,6 +12,7 @@ <type>array</type><methodname>getopt</methodname> <methodparam><type>string</type><parameter>options</parameter></methodparam> <methodparam choice="opt"><type>array</type><parameter>longopts</parameter></methodparam> + <methodparam choice="opt"><type>int</type><parameter role="reference">optind</parameter></methodparam> </methodsynopsis> <para> Parses options passed to the script. @@ -53,6 +54,15 @@ </simpara> </listitem> </varlistentry> + <varlistentry> + <term><parameter>optind</parameter></term> + <listitem> + <simpara> + If the <parameter>optind</parameter> parameter is present, then the + index where argument parsing stopped will be written to this variable. + </simpara> + </listitem> + </varlistentry> </variablelist> </para> <para> @@ -85,7 +95,7 @@ <refsect1 role="returnvalues"> &reftitle.returnvalues; <para> - This function will return an array of option / argument pairs,&return.falseforfailure;. + This function will return an array of option / argument pairs, &return.falseforfailure;. </para> <note> <para> @@ -108,6 +118,12 @@ </thead> <tbody> <row> + <entry>7.1.0</entry> + <entry> + Added the <parameter>optind</parameter> parameter. + </entry> + </row> + <row> <entry>5.3.0</entry> <entry> Added support for "=" as argument/value separator. @@ -253,6 +269,35 @@ } ]]> </screen> + </example> + </para> + <para> + <example xml:id="getopt.examples-4"> + <title><function>getopt</function> example: Using <parameter>optind</parameter></title> + <programlisting role="php"> +<![CDATA[ +<?php +// Script example.php +$optind = null; +$opts = getopt('a:b:', [], $optind); +$pos_args = array_slice($argv, $optind); +var_dump($pos_args); +]]> + </programlisting> + <programlisting role="shell"> +<![CDATA[ +shell> php example.php -a 1 -b 2 -- test +]]> + </programlisting> + &example.outputs; + <screen> +<![CDATA[ +array(1) { + [0]=> + string(4) "test" +} +]]> + </screen> </example> </para> </refsect1> => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=68148 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=68148 ------------------------------------------------------------------ Modified: en/language/types/string.xml By: rjhdby on 2016-09-29 00:20:44 =================================================================== --- en/language/types/string.xml +++ en/language/types/string.xml @@ -249,6 +249,23 @@ <example> <title>Invalid example</title> <programlisting role="php"> + <!-- This is INVALID example --> +<![CDATA[ +<?php +class foo { + public $bar = <<<EOT +bar + EOT; +} +// Identifier may not be indented +?> +]]> + </programlisting> + </example> + <example> + <title>Valid example</title> + <programlisting role="php"> + <!-- This is VALID example --> <![CDATA[ <?php class foo { => Put this change into your patches : https://edit.php.net/?project=php&action=putIntoMyPatches&idDB=68829 => Delete this change: https://edit.php.net/?project=php&action=deleteThisChange&idDB=68829 ------------------------------------------------------------------ -- https://edit.php.net/ This email is send automatically by the Php Docbook Online Editor.

« previous php.doc (#969386282) next »