繁体   English   中英

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

[英]PHP: Get nth character from end of string

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

例如:

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

就这样做吧

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

像这样:

function get_nth($string, $index) {
    return substr($string, strlen($string) - $index - 1, 1);
}
<?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) ,然后只是反转字符串并输出偏移量。

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

来自substr例子

// 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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM