cvs: phpdoc /en/functions strings.xml

From: Date: Wed, 27 Jun 2001 09:58:49 +0000
Subject: cvs: phpdoc /en/functions strings.xml
Groups: php.doc 
Request: Send a blank email to phpdoc+get-969335691@lists.php.net to get a copy of this message
jeroen Wed Jun 27 11:58:49 2001 EDT Modified files: /phpdoc/en/functions strings.xml Log: Implemented zak's notes on addcslashes Index: phpdoc/en/functions/strings.xml diff -u phpdoc/en/functions/strings.xml:1.94 phpdoc/en/functions/strings.xml:1.95 --- phpdoc/en/functions/strings.xml:1.94 Sat Jun 23 22:10:51 2001 +++ phpdoc/en/functions/strings.xml Wed Jun 27 11:58:49 2001 @@ -38,8 +38,17 @@ listed in <parameter>charlist</parameter> parameter. It escapes <literal>\n</literal>, <literal>\r</literal> etc. in C-like style, characters with ASCII code lower than 32 and higher than - 126 are converted to octal representation. Be carefull when - escaping alphanumeric characters. You can specify a range in + 126 are converted to octal representation. + </para> + <para> + Be careful if you choose to escape characters 0, a, b, f, n, r, + t and v. They will be converted to \0, \a, \b, \f, \n, \r, \t + and \v. + In PHP \0 (NULL), \r (carriage return), \n (newline) and \t (tab) + are predefined escape sequences, while in C all of these are + predefined escape sequences. + </para> + <para> <parameter>charlist</parameter> like "\0..\37", which would escape all characters with ASCII code between 0 and 31. <example> @@ -48,9 +57,36 @@ $escaped = addcslashes ($not_escaped, "\0..\37!@\177..\377"); </programlisting> </example> + </para> + <para> + When you define a sequence of characters in the charlist argument + make sure that you know what characters come between the characters + that you set as the start and end of the range. + <informalexample> + <programlisting role="php"> +echo addcslashes('foo[]', 'A..z'); +// All upper and lower-case letters will be escaped +// ..but so will the [\]^_` and space characters. + </programlisting> + </informalexample> + + Also, if the first character in a range has a lower ASCII value + than the second character in the range, no range will be constructed. + Only the start, end and period characters will be escaped. Use the + <function>ord</function> function to find the ASCII value for a character. + <informalexample> + <programlisting role="php"> +echo addcslashes("zoo['.']", 'z..A'); +/* output: +\zoo['\.'] + +*/ + </programlisting> + </informalexample> + <note> <simpara> - Added in PHP4b3-dev.</simpara> + Added in PHP 4</simpara> </note> </para> <para>

« previous php.doc (#969335691) next »