PHP函数 - 自定义字符串长度函数

时间:2010-11-30 03:51:55

标签: php function string-length

在php中,只显示长度大于50个字符的字符串的功能是什么,将其截断为不显示超过130个字符并将其限制为一个结果?

所以例如说我在结果集中有30行,但我只想显示具有这些参数的最新行。如果最新的行有25个字符,则不应显示。它应该只显示字符串长度为50或更多字符的最新字符。

2 个答案:

答案 0 :(得分:1)

使用SQL查询。用于在auto_increment主键(ill call it id)或创建行的日期/时间(例如,time time_created)中找到最新的最大值。

所以我假设表有:id(int),stringVal(string,char(),varchar(),等等)

SELECT MAX(id),  SUBSTRING(stringVal, 1, 130)
FROM yourTable
WHERE LENGTH(stringVal) > 30

如果必须,用时间字段替换id。如果没有其中任何一个,你将很难找到最新的,但你可以随意选择一行。

- 编辑 - 在PHP中使用mysql函数运行上述查询并获取所需输出的示例

$sql = "SELECT MAX(id),  SUBSTRING(stringVal, 1, 130) FROM yourTable WHERE LENGTH(stringVal) > 30";
$r = mysql_query($sql, $conn); //im hoping $conn or something like it is already set up
$row = mysql_fetch_assoc($r);
$desiredString = $row['stringVal'];

答案 1 :(得分:0)

这样的事情应该确保您首先通过最新项目获取数据排序。 break语句将确保在找到符合条件的第一个结果后终止循环...

foreach($array_returned_from_query as $row)
{
    if(strlen($row) > 50)
    {
        echo substr($row, 0, 130);
        break;
    }
}