Есть ли эквивалентная функция, которая возвращает символ в позиции `X` в PHP?

Есть ли эквивалентная функция, которая возвращает символ в позиции X в PHP?

Я просмотрел документацию, но не смог найти ее. Я ищу что-то вроде:

 $charAtPosition20 = strCharAt(20, $myString); 

Вы можете использовать: $myString[20]

Это можно сделать двумя способами:

  1. Используйте квадратные скобки и индекс для прямого доступа к символу в указанном месте, например: $string[$index] или $string[1] ;

  2. Используйте функцию substr : string substr ( string $string , int $start [, int $length ] )
    См. http://us2.php.net/manual/en/function.substr.php для получения дополнительной информации.

Чтобы указать на небольшое оговорку, я заметил на странице «Строки» руководства :

Предупреждение. Внутренне строки PHP представляют собой массивы байтов. В результате доступ или изменение строки с использованием скобок массива не является многобайтовым безопасным и должен выполняться только со строками, которые находятся в однобайтовой кодировке, такой как ISO-8859-1.

Функция str_split () может разбивать строку на массив каждого из своих символов (или подстрок определенной длины), но также не обрабатывает многобайтовые строки. Тем не менее, комментарии пользователей там предлагают некоторые потенциальные решения.

Nevermind нашел это 🙂

 echo $str[1]; 

// так очевидно

 echo $myString{20}; 

или:

 substr($mystring, 20, 1) 

Вы можете перемещать строку для каждого символа. как это.

 $string = 'Here is the text'; echo $string{0}; // output H echo $string{1}; // output e echo $string{2}; // output r 

простой и легкий способ!

 $string = 'Here is the text'; echo $string{2}; 

Он возвращает символ «e», который находится в позиции 2.