2017-09-21 8 views
0

から削除PHPで次のエラー: array_flip())パラメータ1は array_diff_key(指定された配列、整数であることを期待:引数#2がこれを引き起こしているものすべてのアイデア

の配列ではありませんか?

$badkeys = array(); 
//search array for empty x value 
$badkeys = array_search('', $xdata); 
//remove x and y values where empty x 
$xdata = array_diff_key($xdata, array_flip($badkeys)); 
$ydata = array_diff_key($xdata, array_flip($badkeys)); 

//reset keys array 
unset($badkeys); 

//seach x array where data is less than 2 days ago (bugfix) 
$keys = array_search(strtotime('-2 days'), strtotime($ydata)); 
//remove where ydata less than 2 days old (bugfix) 
$xdata = array_diff_key($xdata, array_flip($keys)); 
$ydata = array_diff_key($ydata, array_flip($keys)); 
+0

http://php.net/manual/en/function.array-search.php – Sammitch

答えて

1

array_search関数は、matches配列全体ではなく、最初に一致した要素のインデックスを返します。すべてのマッチしたキーを取得するには、使用array_keys

// Search array for empty x value. 
$badkeys = array_keys($xdata, ''); 

// Seach x array where data is less than 2 days ago (bugfix). 
$keys = array_keys($xdata, strtotime("$ydata -2 days")); 
+0

加工さ、そんなにメイトに感謝魅力:) –

関連する問題