w3resource

PHP: strcoll() function

Description

The strcoll() function is used to compare two strings. The comparison is case sensitive and uses the current locale for doing the comparison.

Version:

(PHP 4 and above)

Syntax:

strcoll(string1, string2)

Parameters:

Name Description Required /
Optional
Type
string1 The first string to compare. Required String
string2 The second string to compare. Required String

Return value:

<0 : if string1<string2.

>0 : if string1>string2.

=0 : if string1=string2.

Value Type: Integer.

Example:

<?php
$a = 'aa';
$b = 'AA';
echo strcmp ($a, $b).'<br>';
setlocale (LC_COLLATE, 'C');
echo "C: " . strcoll ($a, $b).'<br>';
setlocale (LC_COLLATE, 'de_DE');
echo 'de_DE: '.strcoll ($a, $b).'<br>';
setlocale (LC_COLLATE, 'de_CH');
echo 'de_CH: '.strcoll ($a, $b).'<br>';
setlocale (LC_COLLATE, 'en_US');
echo 'en_US: '.strcoll($a, $b).'<br>';
?>

Output:

1
C: 1
de_DE: -2
de_CH: -2
en_US: -2

View the example in the browser

See also

PHP Function Reference

Previous: strcmp
Next: strcspn



PHP: Tips of the Day

PHP: Using str_replace so that it only acts on the first match?

Can be done with preg_replace:

function str_replace_first($from, $to, $content)
{
    $from = '/'.preg_quote($from, '/').'/';

    return preg_replace($from, $to, $content, 1);
}

echo str_replace_first('abc', '123', 'abcdef abcdef abcdef'); 
// outputs '123def abcdef abcdef'

The magic is in the optional fourth parameter [Limit]. From the documentation:

[Limit] - The maximum possible replacements for each pattern in each subject string. Defaults to -1 (no limit).

Ref : https://bit.ly/35SCuP8