|
|
|
| Здравствуйте.
Вот ломаю голову над этим листингом:
$var = strrpos("Hello world!","l");
echo $var; // 9
$var = strrpos("Hello world!","l", -10);
echo $var; // 2
$var = strrpos("Hello world!","l", 10);
echo $var; // FALSE
Я не могу понять как во второй строке получается 2? | |
|
|
|
|
|
|
|
для: A1exander
(22.08.2010 в 17:16)
| | А что мануал говорит - если указан аргумент смещения и если он отрицателен? | |
|
|
|
|
|
|
|
для: sim5
(22.08.2010 в 17:23)
| | Здравствуйте.
В книге написано - "Необязательный третий параметр позволяет задать позицию, ограничивающую поиск, положительное значение с начала строки, отрицательное с конца"
Отсчет позиций я так понимаю идет с нуля..
$var = strrpos("Hello world!","l");
С конца символ "l" впервые встречается на 9 позиции.
$var = strrpos("Hello world!","l", 10);
В этом примере после 10-го символа "d" символа "l" нет.
Но не могу понять почему здесь получается 2, как работает функция,
$var = strrpos("Hello world!","l", -10);
Если я правильно понял то в строке:
Если +10 тогда первые 10 позиций не учитываются
Если -10 тогда последние 10 не учитываются
?
Третий параметр - 10 это индекс массива или кол-во символов? | |
|
|
|
|
|
|
|
для: A1exander
(22.08.2010 в 17:52)
| | Начиная с PHP 5.0.0, необязательный аргумент offset позволяет указать, с какого по счету символа строки haystack начинать поиск. Отрицательное значение предписывает прекратить поиск при достижении определенной позиции до конца строки.
Парметр -10, означает, что поиск нужно прекратить при достижении позиции 10 символов от конца строки, то есть от начала это будет 2 (H-0, e-1, l-2). | |
|
|
|
|
|
|
|
для: sim5
(22.08.2010 в 18:04)
| | Не до конца понял, путал индекс и кол-во символов. Теперь ясно, Спасибо. | |
|
|
|