如何使用PHP从字符串中获取字母的位置?

如何使用PHP从字符串中获取字母的位置?,php,preg-match-all,Php,Preg Match All,字母是m,字符串是asdvbgmfger 当我运行代码时,我想得到m的位置是6。该位置从0开始 我使用此代码但不起作用: 您是否尝试过这种方式: 希望有帮助。为什么不使用strpos而不是regex?这段代码是您编写的吗?这有很多问题,您应该将代码更改为if$strPosition!==错误,因为如果位置为0,则条件将失败。 <?php $str = "asdvbgmfger"; if (preg_match_all('/\p{L}/u', $str, $matches, PREG_OF

字母是m,字符串是asdvbgmfger

当我运行代码时,我想得到m的位置是6。该位置从0开始

我使用此代码但不起作用:

您是否尝试过这种方式:


希望有帮助。

为什么不使用strpos而不是regex?这段代码是您编写的吗?这有很多问题,您应该将代码更改为if$strPosition!==错误,因为如果位置为0,则条件将失败。
<?php
$str = "asdvbgmfger";

if (preg_match_all('/\p{L}/u', $str, $matches, PREG_OFFSET_CAPTURE) > 0) {
    $lastMatch = "m";
    echo 'm position is '.$lastMatch[1];
} else {
    echo 'no letters found';
}
?>
<?php
$str = "asdvbgmfger";
$strPosition = strpos($str, 'm');

if ($strPosition !== false) {
    echo 'm position is ' . $strPosition;
} else {
    echo 'no letters found';
}