Skip to content

Commit 36e29fa

Browse files
devnexenclaudepache
authored andcommitted
Update string comparisons possible returns
Co-authored-by: Christoph M. Becker <[email protected]> Closes phpGH-1857.
1 parent 7bb0e71 commit 36e29fa

File tree

8 files changed

+135
-23
lines changed

8 files changed

+135
-23
lines changed

language-snippets.ent

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -744,6 +744,15 @@ function.</simpara></warning>'>
744744
</row>
745745
'>
746746

747+
<!ENTITY standard.changelog.binary-safe-string-comparison '<row xmlns="http://docbook.org/ns/docbook">
748+
<entry>8.2.0</entry>
749+
<entry>
750+
This function now returns <literal>-1</literal> or <literal>1</literal>,
751+
where it previously returned a negative or positive number.
752+
</entry>
753+
</row>
754+
'>
755+
747756
<!-- FileInfo -->
748757
<!ENTITY fileinfo.parameters.finfo '<para xmlns="http://docbook.org/ns/docbook">An <classname>finfo</classname> instance, returned by <function>finfo_open</function>.</para>'>
749758
<!ENTITY fileinfo.changelog.finfo-object '<row xmlns="http://docbook.org/ns/docbook">

reference/strings/functions/strcasecmp.xml

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,13 +47,30 @@
4747
<refsect1 role="returnvalues">
4848
&reftitle.returnvalues;
4949
<para>
50-
Returns &lt; 0 if <parameter>string1</parameter> is less than
51-
<parameter>string2</parameter>; &gt; 0 if <parameter>string1</parameter>
52-
is greater than <parameter>string2</parameter>, and 0 if they are
50+
Returns <literal>-1</literal> if <parameter>string1</parameter> is less than
51+
<parameter>string2</parameter>; <literal>1</literal> if <parameter>string1</parameter>
52+
is greater than <parameter>string2</parameter>, and <literal>0</literal> if they are
5353
equal.
5454
</para>
5555
</refsect1>
5656

57+
<refsect1 role="changelog">
58+
&reftitle.changelog;
59+
<informaltable>
60+
<tgroup cols="2">
61+
<thead>
62+
<row>
63+
<entry>&Version;</entry>
64+
<entry>&Description;</entry>
65+
</row>
66+
</thead>
67+
<tbody>
68+
&standard.changelog.binary-safe-string-comparison;
69+
</tbody>
70+
</tgroup>
71+
</informaltable>
72+
</refsect1>
73+
5774
<refsect1 role="examples">
5875
&reftitle.examples;
5976
<para>

reference/strings/functions/strcmp.xml

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,13 +45,30 @@
4545
<refsect1 role="returnvalues">
4646
&reftitle.returnvalues;
4747
<para>
48-
Returns &lt; 0 if <parameter>string1</parameter> is less than
49-
<parameter>string2</parameter>; &gt; 0 if <parameter>string1</parameter>
50-
is greater than <parameter>string2</parameter>, and 0 if they are
48+
Returns <literal>-1</literal> if <parameter>string1</parameter> is less than
49+
<parameter>string2</parameter>; <literal>1</literal> if <parameter>string1</parameter>
50+
is greater than <parameter>string2</parameter>, and <literal>0</literal> if they are
5151
equal.
5252
</para>
5353
</refsect1>
5454

55+
<refsect1 role="changelog">
56+
&reftitle.changelog;
57+
<informaltable>
58+
<tgroup cols="2">
59+
<thead>
60+
<row>
61+
<entry>&Version;</entry>
62+
<entry>&Description;</entry>
63+
</row>
64+
</thead>
65+
<tbody>
66+
&standard.changelog.binary-safe-string-comparison;
67+
</tbody>
68+
</tgroup>
69+
</informaltable>
70+
</refsect1>
71+
5572
<refsect1 role="examples">
5673
&reftitle.examples;
5774
<para>

reference/strings/functions/strnatcasecmp.xml

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,13 +49,30 @@
4949
<refsect1 role="returnvalues">
5050
&reftitle.returnvalues;
5151
<para>
52-
Similar to other string comparison functions, this one returns &lt; 0 if
53-
<parameter>string1</parameter> is less than <parameter>string2</parameter> &gt;
54-
0 if <parameter>string1</parameter> is greater than
55-
<parameter>string2</parameter>, and 0 if they are equal.
52+
Similar to other string comparison functions, this one returns <literal>-1</literal> if
53+
<parameter>string1</parameter> is less than <parameter>string2</parameter>
54+
<literal>1</literal> if <parameter>string1</parameter> is greater than
55+
<parameter>string2</parameter>, and <literal>0</literal> if they are equal.
5656
</para>
5757
</refsect1>
5858

59+
<refsect1 role="changelog">
60+
&reftitle.changelog;
61+
<informaltable>
62+
<tgroup cols="2">
63+
<thead>
64+
<row>
65+
<entry>&Version;</entry>
66+
<entry>&Description;</entry>
67+
</row>
68+
</thead>
69+
<tbody>
70+
&standard.changelog.binary-safe-string-comparison;
71+
</tbody>
72+
</tgroup>
73+
</informaltable>
74+
</refsect1>
75+
5976
<refsect1 role="examples">
6077
&reftitle.examples;
6178
<para>

reference/strings/functions/strnatcmp.xml

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,13 +48,30 @@
4848
<refsect1 role="returnvalues">
4949
&reftitle.returnvalues;
5050
<para>
51-
Similar to other string comparison functions, this one returns &lt; 0 if
52-
<parameter>string1</parameter> is less than <parameter>string2</parameter>; &gt;
53-
0 if <parameter>string1</parameter> is greater than
54-
<parameter>string2</parameter>, and 0 if they are equal.
51+
Similar to other string comparison functions, this one returns <literal>-1</literal> if
52+
<parameter>string1</parameter> is less than <parameter>string2</parameter>;
53+
<literal>1</literal> if <parameter>string1</parameter> is greater than
54+
<parameter>string2</parameter>, and <literal>0</literal> if they are equal.
5555
</para>
5656
</refsect1>
5757

58+
<refsect1 role="changelog">
59+
&reftitle.changelog;
60+
<informaltable>
61+
<tgroup cols="2">
62+
<thead>
63+
<row>
64+
<entry>&Version;</entry>
65+
<entry>&Description;</entry>
66+
</row>
67+
</thead>
68+
<tbody>
69+
&standard.changelog.binary-safe-string-comparison;
70+
</tbody>
71+
</tgroup>
72+
</informaltable>
73+
</refsect1>
74+
5875
<refsect1 role="examples">
5976
&reftitle.examples;
6077
<para>

reference/strings/functions/strncasecmp.xml

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,12 +56,29 @@
5656
<refsect1 role="returnvalues">
5757
&reftitle.returnvalues;
5858
<para>
59-
Returns &lt; 0 if <parameter>string1</parameter> is less than
60-
<parameter>string2</parameter>; &gt; 0 if <parameter>string1</parameter> is
61-
greater than <parameter>string2</parameter>, and 0 if they are equal.
59+
Returns <literal>-1</literal> if <parameter>string1</parameter> is less than
60+
<parameter>string2</parameter>; <literal>1</literal> if <parameter>string1</parameter> is
61+
greater than <parameter>string2</parameter>, and <literal>0</literal> if they are equal.
6262
</para>
6363
</refsect1>
6464

65+
<refsect1 role="changelog">
66+
&reftitle.changelog;
67+
<informaltable>
68+
<tgroup cols="2">
69+
<thead>
70+
<row>
71+
<entry>&Version;</entry>
72+
<entry>&Description;</entry>
73+
</row>
74+
</thead>
75+
<tbody>
76+
&standard.changelog.binary-safe-string-comparison;
77+
</tbody>
78+
</tgroup>
79+
</informaltable>
80+
</refsect1>
81+
6582
<refsect1 role="examples">
6683
&reftitle.examples;
6784
<para>

reference/strings/functions/strncmp.xml

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,13 +59,30 @@
5959
<refsect1 role="returnvalues">
6060
&reftitle.returnvalues;
6161
<para>
62-
Returns &lt; 0 if <parameter>string1</parameter> is less than
63-
<parameter>string2</parameter>; &gt; 0 if <parameter>string1</parameter>
64-
is greater than <parameter>string2</parameter>, and 0 if they are
62+
Returns <literal>-1</literal> if <parameter>string1</parameter> is less than
63+
<parameter>string2</parameter>; <literal>1</literal> if <parameter>string1</parameter>
64+
is greater than <parameter>string2</parameter>, and <literal>0</literal> if they are
6565
equal.
6666
</para>
6767
</refsect1>
6868

69+
<refsect1 role="changelog">
70+
&reftitle.changelog;
71+
<informaltable>
72+
<tgroup cols="2">
73+
<thead>
74+
<row>
75+
<entry>&Version;</entry>
76+
<entry>&Description;</entry>
77+
</row>
78+
</thead>
79+
<tbody>
80+
&standard.changelog.binary-safe-string-comparison;
81+
</tbody>
82+
</tgroup>
83+
</informaltable>
84+
</refsect1>
85+
6986
<refsect1 role="examples">
7087
&reftitle.examples;
7188
<para>

reference/strings/functions/substr-compare.xml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -79,9 +79,9 @@
7979
<refsect1 role="returnvalues">
8080
&reftitle.returnvalues;
8181
<para>
82-
Returns &lt; 0 if <parameter>haystack</parameter> from position
83-
<parameter>offset</parameter> is less than <parameter>needle</parameter>, &gt;
84-
0 if it is greater than <parameter>needle</parameter>, and 0 if they are equal.
82+
Returns <literal>-1</literal> if <parameter>haystack</parameter> from position
83+
<parameter>offset</parameter> is less than <parameter>needle</parameter>, <literal>1</literal>
84+
if it is greater than <parameter>needle</parameter>, and <literal>0</literal> if they are equal.
8585
If <parameter>offset</parameter> is equal to (prior to PHP 7.2.18, 7.3.5) or
8686
greater than the length of <parameter>haystack</parameter>, or the
8787
<parameter>length</parameter> is set and is less than 0,
@@ -102,6 +102,7 @@
102102
</row>
103103
</thead>
104104
<tbody>
105+
&standard.changelog.binary-safe-string-comparison;
105106
<row>
106107
<entry>8.0.0</entry>
107108
<entry>

0 commit comments

Comments
 (0)