2015-02-10 115 views
0

我在這裏遇到了一個複雜的問題,經過幾個月的研究,我仍然無法找到一個更方便的方法。在PHP中對數組進行排序的最佳方法

我有一個網站,讀取JSON文本文件,並顯示從該JSON文件的信息作爲表的網頁。 JSON文件包含日期,操作,用戶等字段。

我目前的做法是添加文件上傳HTML標記,以便用戶可以選擇要讀取的JSON文件。我別無選擇,只能做文件上傳,因爲我沒有看到其他方式,但我真的不想將這些文件上傳到服務器,我只需要閱讀內容。無論如何,在上傳文件並將內容讀入變量後,我必須將這些文件存儲到MySql數據庫中,以便我可以按日期對它們進行排序,我必須能夠按日期排序顯示錶。

我有2個問題;

  • 是否有任何其他方式來讀取文本文件的內容,而無需上傳文件來讀取?
  • 是否有某種簡單的方法來排序數組(按日期)?
+0

[按日期排列的PHP順序數組?]可能的重複(http://stackoverflow.com/questions/6401714/php-order-array-by-date) – Voycey 2015-02-10 10:19:14

+0

'uasort()'排序。上傳文件到'/ tmp',你的操作系統會自動清除它 - 或者使用pastebin API和'file_get_contents'(取決於這些文件保存的信息)。儘管如此,我相信這個問題對於褒貶不一的回答而言是偏離的。 – 2015-02-10 10:19:26

+4

我是否正確,在研究__months__之後,你能做的最好的事情是將數組保存到mySQL中,以便在查詢時可以按日期排序?你在研究的幾個月裏沒有偶然發現uasort()和類似的功能? – Sejanus 2015-02-10 10:23:28

回答

0

爲什麼不直接存儲JSON數據到數據庫中? 你沒有上傳文件(只是做一個SQL插入),你可以添加日期和排序它...

1

1)有一種方法來讀取文件使用Javascript文件讀取器。也許你會發現this link有幫助。 如果您選擇不使用Javascript,那麼在閱讀文件之前,必須先將文件上傳到服務器上。您可以將其上傳到臨時位置,並在閱讀完內容後將其刪除。

2)除了在其他答案中給出的想法,你可能想看看PHP的array_multisort函數。