nlopess Tue Jul 12 12:33:57 2005 EDT
Modified files: /phpdoc/en/reference/strings/functions substr-count.xml Log: convert to new style add new offset&length parameters integrate users notes about 'overlapped' substrings improve the example http://cvs.php.net/diff.php/phpdoc/en/reference/strings/functions/substr-count.xml?r1=1.6&r2=1.7&ty=u Index: phpdoc/en/reference/strings/functions/substr-count.xml diff -u phpdoc/en/reference/strings/functions/substr-count.xml:1.6 phpdoc/en/reference/strings/functions/substr-count.xml:1.7 --- phpdoc/en/reference/strings/functions/substr-count.xml:1.6 Thu May 13 22:03:12 2004 +++ phpdoc/en/reference/strings/functions/substr-count.xml Tue Jul 12 12:33:55 2005 @@ -1,44 +1,152 @@ <?xml version="1.0" encoding="iso-8859-1"?> -<!-- $Revision: 1.6 $ --> +<!-- $Revision: 1.7 $ --> <!-- splitted from ./en/functions/strings.xml, last change in rev 1.27 --> - <refentry id="function.substr-count"> - <refnamediv> - <refname>substr_count</refname> - <refpurpose>Count the number of substring occurrences</refpurpose> - </refnamediv> - <refsect1> - <title>Description</title> - <methodsynopsis> - <type>int</type><methodname>substr_count</methodname> - <methodparam><type>string</type><parameter>haystack</parameter></methodparam> - <methodparam><type>string</type><parameter>needle</parameter></methodparam> - </methodsynopsis> - <para> - <function>substr_count</function> returns the number of times the - <parameter>needle</parameter> substring occurs in the - <parameter>haystack</parameter> string. Please note that - <parameter>needle</parameter> is case sensitive. - </para> - - <para> - <example> - <title><function>substr_count</function> example</title> - <programlisting role="php"> +<refentry id="function.substr-count"> + <refnamediv> + <refname>substr_count</refname> + <refpurpose>Count the number of substring occurrences</refpurpose> + </refnamediv> + <refsect1 role="description"> + &reftitle.description; + <methodsynopsis> + <type>int</type><methodname>substr_count</methodname> + <methodparam><type>string</type><parameter>haystack</parameter></methodparam> + <methodparam><type>string</type><parameter>needle</parameter></methodparam> + <methodparam choice="opt"><type>int</type><parameter>offset</parameter></methodparam> + <methodparam choice="opt"><type>int</type><parameter>length</parameter></methodparam> + </methodsynopsis> + <para> + <function>substr_count</function> returns the number of times the + <parameter>needle</parameter> substring occurs in the + <parameter>haystack</parameter> string. Please note that + <parameter>needle</parameter> is case sensitive. + </para> + <note> + <para> + This function doesn't count overlapped substrings. See the example below! + </para> + </note> + </refsect1> + + <refsect1 role="parameters"> + &reftitle.parameters; + <para> + <variablelist> + <varlistentry> + <term><parameter>haystack</parameter></term> + <listitem> + <para> + The string to search in + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>needle</parameter></term> + <listitem> + <para> + The substring to search for + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>offset</parameter></term> + <listitem> + <para> + The offset where to start counting + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><parameter>length</parameter></term> + <listitem> + <para> + The maximum legth after the specified offset to search for the + substring. It outputs a warning if the offset plus the length is + greater than the <parameter>haystack</parameter> length. + </para> + </listitem> + </varlistentry> + </variablelist> + </para> + </refsect1> + + <refsect1 role="returnvalues"> + &reftitle.returnvalues; + <para> + This functions returns an <type>integer</type>. + </para> + </refsect1> + + <refsect1 role="changelog"> + &reftitle.changelog; + <para> + <informaltable> + <tgroup cols="2"> + <thead> + <row> + <entry>&Version;</entry> + <entry>&Description;</entry> + </row> + </thead> + <tbody> + <row> + <entry>5.1.0</entry> + <entry> + Added the <parameter>offset</parameter> and + the <parameter>length</parameter> parameters + </entry> + </row> + </tbody> + </tgroup> + </informaltable> + </para> + </refsect1> + + <refsect1 role="examples"> + &reftitle.examples; + <para> + <example> + <title>A <function>substr_count</function> example</title> + <programlisting role="php"> <![CDATA[ <?php -echo substr_count("This is a test", "is"); // prints out 2 +$text = 'This is a test'; +echo strlen($text); // 14 + +echo substr_count($text, 'is'); // 2 + +// the string is reduced to 's is a test', so it prints 1 +echo substr_count($text, 'is', 3); + +// the text is reduced to 's i', so it prints 0 +echo substr_count($text, 'is', 3, 3); + +// generates a warning because 5+10 > 14 +echo substr_count($text, 'is', 5, 10); + + +// prints only 1, because it doesn't count overlapped subtrings +$text2 = 'gcdgcdgcd'; +echo substr_count($text2, 'gcdgcd'); ?> ]]> - </programlisting> - </example> - </para> - <simpara> - See also <function>count_chars</function>, - <function>strpos</function>, <function>substr</function>, - and <function>strstr</function>. - </simpara> - </refsect1> - </refentry> + </programlisting> + </example> + </para> + </refsect1> + + <refsect1 role="seealso"> + &reftitle.seealso; + <para> + <simplelist> + <member><function>count_chars</function></member> + <member><function>strpos</function></member> + <member><function>substr</function></member> + <member><function>strstr</function></member> + </simplelist> + </para> + </refsect1> +</refentry> <!-- Keep this comment at the end of the file Local variables: