首页
学习
活动
专区
圈层
工具
发布

内爆
EN

Stack Overflow用户
提问于 2015-05-06 10:27:36
回答 3查看 2.2K关注 0票数 4

我想在for循环中内爆多个数组。

代码语言:javascript
复制
$_POST['PprodName'];

在这个$_POST['PprodName']中,我得到了一个值:

代码语言:javascript
复制
Array ( [0] => steel mj23 [1] => [2] => [3] => [4] => [5] => [6] => [7] => )

steel mj23是我的第一个产品名称。

现在我想检查元素是否是空的,根据它们的位置。因此,我应用了一个for循环,但不知道如何对元素的不为空的元素内爆。

我只想对那些不是空的元素进行内爆。

这是我的for循环。

代码语言:javascript
复制
for( $i=0; $i < count($_POST['PprodName']); $i++ ) {
                    if( !empty( $_POST['PprodName'][$i] ) ) {
                        print_r($_POST['PprodName'][$i]);
                    }
                }
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-05-06 10:30:28

你不需要一个for循环。只需使用array_filter()筛选所有空值,然后只需使用implode(),如下所示:

代码语言:javascript
复制
echo implode(", ", array_filter($_POST['PprodName']));
票数 8
EN

Stack Overflow用户

发布于 2015-05-06 10:33:59

试试这条路在线演示

代码语言:javascript
复制
$data=Array ( 0 => "steel mj23", 1 =>'test' ,2 =>'', 3 =>'' ,4 =>"", 5 =>"", 6 =>"", 7 =>"" );
$result=Array();
foreach($data as $key=>$value)
{
    if(!empty($value))
       $result[]=$value;         
}
var_dump($result);
票数 0
EN

Stack Overflow用户

发布于 2015-05-06 10:37:25

代码语言:javascript
复制
  <?php
    $array = array(
        'fruit1' => 'apple',
        'fruit2' => 'orange',
        'fruit3' => ' ',
        'fruit4' => ' ',
        'fruit5' => 'apple');

        for ($i = 0; $i <  count($array); $i++) {
        $key=key($array);
        $val=$array[$key];
        if ($val<> ' ') {
           echo $key ." = ".  $val ." <br> ";
           }
         next($array);
        }


     /* fruit1 = apple
    fruit2 = orange
    fruit5 = apple
    */
    ?>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30074115

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档