2017-09-24 121 views
0

我正在显示一些显示更多链接的非常非常长的文本字符串。所以我需要一种方法来确定字符串有多长。检查一个字符串是否超过xx个字符而不通过strlen()来检查整个字符串?

我知道我可以简单地使用strlen()来调整字符串的大小,然后将返回的长度与50个字符的限制进行比较,但对于非常长的字符串,我认为这是一个性能拖延,尤其是考虑到将有近千个字符串根据用户请求进行测量。

那么有什么方法可以确保字符串是否超过50个字符,然后停止?

我知道我可以在内部函数中逐字串读字符串,但是在这种情况下是否有更好的做法,因为我认为这是一个相当常见的问题?

+1

如何启动[' SUBSTR()'](http://php.net/substr)? – bnahin

回答

1

如果您需要检查字符串是否超过50个字符,那么您可以尝试检查第50个字符是否存在。

例如,对于长度为25个字符的字符串,我需要知道它是否长于20个字符。

$str = '123456789qwertyuiopasdfgh'; 
    if($str[20] != '') echo 'It is longer'; 
    else echo 'It is not'; 

我不知道,如果它的速度更快那么简单strlen的,但你可以尝试一些性能测试C:

UPD:另外,还要注意的是,指数从0

+1

请注意,这会在错误时触发通知。 – ishegg

相关问题