Я хотел бы знать разницу между двумя различными видами использования. Я считаю, что разница в том, что очень тонкое.
Это объяснение из справочного руководства IBM. Однако, возможно, мой английский плохой, я просто не могу представить себе разницу.
Возможно, показывая мне пример обоих случаев, я бы лучше понял это.
Вот объяснение от IBM:
Подпрограмма strchr возвращает указатель на первое вхождение символа, заданного параметром Character (преобразованный в unsigned character) в строку, на которую указывает параметр String. Возвращает нулевой указатель, если символ не встречается в строке. Нулевой байт, который завершает строку, считается частью строки.
Подпрограмма strrchr возвращает указатель на последнее вхождение символа, указанного параметром Character (преобразованный в символ) в строку, на которую указывает параметр String. Возвращает нулевой указатель, если символ не встречается в строке. Нулевой байт, который завершает строку, считается частью строки.
strchr
является псевдонимом strstr
:
Возвращает часть строки стога сена, начиная с первого появления иглы до конца стога сена.
strrchr
:
Эта функция возвращает часть стога сена, которая начинается с последнего появления иглы и идет до конца стога сена.
strchr
начинается с первого вхождения, strrchr
начинается с последнего вхождения.
strchr
находит первое вхождение, и strrchr
находит последнее вхождение символа или строки
$s = 'This is a test'; $first = strchr($s, 's'); $last = strrchr($s, 's');
$first
содержит s is a test
$last
содержит st