我需要再次幫助。我有一個陣列,我需要提取最早的體重值。php多維數組獲取第一個日期值
編輯 - 編輯 - 編輯
array (
3 =>
array (
'id' => '20110211',
'Date' => '2011-02-11',
'Weight' => '195',
),
4 =>
array (
'id' => '20110213',
'Date' => '2011-02-13',
'Weight' => '160',
),
6 =>
array (
'id' => '20110310',
'Date' => '2011-03-10',
'Weight' => '200',
),
12 =>
array (
'id' => '20110301',
'Date' => '2011-03-01',
'Weight' => '55',
),
21 =>
array (
'id' => '20110215',
'Date' => '2011-02-15',
'Weight' => '120',
),
25 =>
array (
'id' => '20110322',
'Date' => '2011-03-22',
'Weight' => '250',
),
)
我已經編輯這一點,此代碼的工作:
function sortByDate ($arr1, $arr2)
{
return strcmp($arr1['Date'], $arr2['Date']);
}
// $arr is your array
usort($weight_tracker, 'sortByDate');
$earliest = $weight_tracker[0]['Weight'];
echo $earliest;
但自從我上有一個表格這個更新陣列時更新數組的頁面 - 我找到了我ssage致命錯誤:無法使用字符串偏移量作爲數組在
編輯 - >我已經重新聲明這是字符串,因此錯誤!使用全球時要小心,因爲一切都會變得一團糟! PHP是寬容,但 「寬恕」 以後可以在花費了大量的時間... :)
謝謝,
彼得
這將是其他人更容易複製你代碼和解決方案,如果你在PHP中粘貼正確的數組而不是var_dump()的結果,這意味着我們必須自己輸出它們,只是說... – Cups 2011-05-03 15:25:00
這可能是一個愚蠢的問題,但'$ weight_tracker'被意外地重新分配給一個字符串而不是數組在某些時候?如果這段代碼是錯誤發生的地方,聽起來像是因爲'$ weight_tracker'是一個字符串,它應該是一個數組。 – Wiseguy 2011-05-03 16:54:13
在不相關的說明中,它看起來像大數組中的數字鍵是來自數據庫的記錄ID或其他東西。那些需要保存嗎?目前'usort()'將它們重新編號爲0,1,2等。如果您需要保留原始ID號碼,我會更新我的答案。 – Wiseguy 2011-05-03 16:56:36