-4

私は配列を持っています:

$array = array("1" => "", "2" => "" , "3" => "data1", "4" => "" , "5" => "data2", "6" => "" );

空の値を残して宣言されforています。配列が長すぎる可能性があります。PHPで塗りつぶされた配列番号を検索するメソッドが必要です。

4

4 に答える 4

4

これをチェックすると、すべての空の配列キーが表示されます

  <?php
      $array = array("1" => "", "2" => "" , "3" => "data1", "4" => "" , "5" => "data2", "6" => "" );
      $new = array_filter($array, 'strlen');
      $result = array_diff($array, $new);
       print_r($result);
    ?>

空の値キーを削除する場合は、 array_filterを使用します

    <?php
      $array = array("1" => "", "2" => "" , "3" => "data1", "4" => "" , "5" => "data2", "6" => "" );
      $new = array_filter($array, 'strlen');
      print_r($new);
    ?>
于 2012-08-30T11:33:21.427 に答える
1

このようなもの?

$newArray = array();

foreach($array as $key=> $value)
{
   if($value != '')
       $newArray[$key] = $value;
}

print_r($newArray);
于 2012-08-30T11:32:35.170 に答える
1
$array = array("1" => "", "2" => "" , "3" => "data1", "4" => "" , "5" => "data2", "6" => "" );

$array_with_keys = array();


foreach($array as $key=> $value)
{
   if($value != '')
       $array_with_keys[] = $key;
}

print_r($array_with_keys);

キーのみが必要なため、 foreachループを使用してデータベースを更新するために使用できるキーを含む配列が返されます。

于 2012-08-30T11:45:02.533 に答える
0

私はあなたが何を望んでいるかについて100%確信していませんが、これはあなたを助けるかもしれないと思います。これがあなたが望んでいたものではない場合は私に知らせてください。

foreach ($array as $v) {
  if ($v) {
    // this value is not empty
  }
}
于 2012-08-30T11:32:39.707 に答える