PHP数组:无论密钥如何,首先得到的不是空值

时间:2015-07-03 07:43:26

标签: php arrays string

我有一个包含用户评论的字符串的数组

数组可以是这样的:

//example 1    
   $comments
    : array = 
      0: string = 
      1: string = 
      2: string = this is one comment

或者像这样:

//example 2  
    $comments
    : array = 
      0: string = hey, I am a comment
      1: string = 
      2: string = 
      3: string = and this is another comment

或包含空字符串和注释的任何其他表单

我需要的是一个字符串,其中的firs不是空的评论。

在示例1中,字符串应包含:"这是一条注释"

在示例2"嘿,我是评论"

我该怎么做?我要绕过这个,它必须要简单得多。

非常感谢!

2 个答案:

答案 0 :(得分:1)

这是使用forloop的方法:

<?php

$ex1 = array("", "", "comment");
$ex2 = array("comment", "", "");

function getFirstNotEmpty($arr) {
    for ($i = 0; $i < count($arr); $i++)
        if (!empty($arr[$i]))
            return $arr[$i];
}

echo getFirstNotEmpty($ex1) . "\n";
echo getFirstNotEmpty($ex2);

Output

comment
comment

答案 1 :(得分:0)

如果您的PHP版本无法取消引用...

foreach($array as $key => $value)
{
    if(trim($value)) return $value;
}
return "No comments found";