PHP:从字符串末尾获取第n个字符

时间:2014-01-24 09:26:39

标签: php string

我确信必须有一种简单的方法来从字符串末尾获取第n个字符。

例如:

$NthChar = get_nth('Hello', 3); // will result in $NthChar='e'

5 个答案:

答案 0 :(得分:18)

就这样做

  $rest = substr("abcdef", -3, 1); // returns 'd'

答案 1 :(得分:4)

像这样:

function get_nth($string, $index) {
    return substr($string, strlen($string) - $index - 1, 1);
}

答案 2 :(得分:0)

<?php
function get_nth($string, $offset) {
    $string = strrev($string); //reverse the string
    return $string[$offset];
}

$string = 'Hello';
echo get_nth($string, 3);

因为$ string [3]会给你字符串的第三个偏移量,但是你想要它向后,你需要将它反向串起来。


编辑:

尽管其他答案(在我之后发布)正在使用子字符串,并且它可以是单行,但是substr($string, -2, 1)几乎不可读,然后只需反转字符串并输出偏移量。

答案 3 :(得分:0)

substr($string, -3);//returns 3rd char from the end of the string

答案 4 :(得分:0)

来自substr examples

// Accessing single characters in a string
// can also be achieved using "square brackets"

因此:

$str = "isogram";
echo $str[-1]; // m
echo $str[-2]; // a
echo $str[-3]; // r