[prev in list] [next in list] [prev in thread] [next in thread]
List: php-doc-cvs
Subject: [DOC-CVS] =?utf-8?q?svn:_/phpdoc/en/trunk/language/types/_array.xml_string.xml?=
From: Nikita_Popov <nikic () php ! net>
Date: 2012-08-25 14:37:42
Message-ID: svn-nikic-1345905462-327267-2118596622 () svn ! php ! net
[Download RAW message or body]
nikic Sat, 25 Aug 2012 14:37:42 +0000
Revision: http://svn.php.net/viewvc?view=revision&revision=327267
Log:
Move string offset peculiarities between PHP versions off into the string offset docs
Changed paths:
U phpdoc/en/trunk/language/types/array.xml
U phpdoc/en/trunk/language/types/string.xml
Modified: phpdoc/en/trunk/language/types/array.xml
===================================================================
--- phpdoc/en/trunk/language/types/array.xml 2012-08-25 12:00:56 UTC (rev 327266)
+++ phpdoc/en/trunk/language/types/array.xml 2012-08-25 14:37:42 UTC (rev 327267)
@@ -118,65 +118,6 @@
</listitem>
</itemizedlist>
</para>
-
- <para>
- From PHP 5.4, string offset access made consistent. As a result, some return \
values may be
- different from older version. As of PHP 5.4, string offsets should be an integer \
or an integer like
- string, otherwise the result will be a warning.
- </para>
-
- <example>
- <title>String offset access example</title>
- <programlisting role="php">
-<![CDATA[
-<?php
-$str = 'abc';
-
-var_dump($str['1']);
-var_dump(isset($str['1']));
-
-var_dump($str['1.0']);
-var_dump(isset($str['1.0']));
-
-var_dump($str['x']);
-var_dump(isset($str['x']));
-
-var_dump($str['1x']);
-var_dump(isset($str['1x']));
-?>
-]]>
- </programlisting>
- &example.outputs.53;
- <screen>
-<![CDATA[
-string(1) "b"
-bool(true)
-string(1) "b"
-bool(true)
-string(1) "a"
-bool(true)
-string(1) "b"
-bool(true)
-]]>
- </screen>
- &example.outputs.54;
- <screen>
-<![CDATA[
-string(1) "b"
-bool(true)
-
-Warning: Illegal string offset '1.0' in /tmp/t.php on line 7
-string(1) "b"
-bool(false)
-
-Warning: Illegal string offset 'x' in /tmp/t.php on line 9
-string(1) "a"
-bool(false)
-string(1) "b"
-bool(false)
-]]>
- </screen>
- </example>
<para>
If multiple elements in the array declaration use the same key, only the last \
one
Modified: phpdoc/en/trunk/language/types/string.xml
===================================================================
--- phpdoc/en/trunk/language/types/string.xml 2012-08-25 12:00:56 UTC (rev 327266)
+++ phpdoc/en/trunk/language/types/string.xml 2012-08-25 14:37:42 UTC (rev 327267)
@@ -787,7 +787,65 @@
]]>
</programlisting>
</example>
+
+ <para>
+ As of PHP 5.4 string offsets have to either be integers or integer-like strings, \
otherwise a warning + will be thrown. Previously an offset like \
<literal>"foo"</literal> was silently cast to <literal>0</literal>. + </para>
+ <example>
+ <title>Differences between PHP 5.3 and PHP 5.4</title>
+ <programlisting role="php">
+<![CDATA[
+<?php
+$str = 'abc';
+
+var_dump($str['1']);
+var_dump(isset($str['1']));
+
+var_dump($str['1.0']);
+var_dump(isset($str['1.0']));
+
+var_dump($str['x']);
+var_dump(isset($str['x']));
+
+var_dump($str['1x']);
+var_dump(isset($str['1x']));
+?>
+]]>
+ </programlisting>
+ &example.outputs.53;
+ <screen>
+<![CDATA[
+string(1) "b"
+bool(true)
+string(1) "b"
+bool(true)
+string(1) "a"
+bool(true)
+string(1) "b"
+bool(true)
+]]>
+ </screen>
+ &example.outputs.54;
+ <screen>
+<![CDATA[
+string(1) "b"
+bool(true)
+
+Warning: Illegal string offset '1.0' in /tmp/t.php on line 7
+string(1) "b"
+bool(false)
+
+Warning: Illegal string offset 'x' in /tmp/t.php on line 9
+string(1) "a"
+bool(false)
+string(1) "b"
+bool(false)
+]]>
+ </screen>
+ </example>
+
<note>
<para>
Accessing variables of other types (not including arrays or objects
--
PHP Documentation Commits Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic