如題
有個想法但不知道可不可行
原本的寫法是每一個呈現的樣子都寫一個IF包住,判斷到登入的帳號呈現他的樣子
不過這寫法到最後會越來越長而且也很難維護
目前的想法是二維陣列放資料
X放帳號
Y放呈現的資料代號
用FOR去跑陣列,判斷SWITCH符合Y就呈現該資料
只是Y的資料量不一定,隨著不同的X有不同的資料
後續的帳號會越來越多
怕每一次進來都要跑兩層FOR會炸掉
想請問各位大大有沒有什麼更好的建議
你的解法根本用不到程式的方便之處,因為你這樣等於手刻所有的結果,跟單純寫 html 沒什麼差別,思維上是根據不同的 id 取得不同的內容,所以程式這邊要做的只有根據不同的 id 取得不同的內容這件事而已,而取得不同的內容有很多方法。
(1) 資料庫:
把使用者帳號跟他需要的結果存到資料庫,利用資料庫內的資料呈現。
(2) 實體檔案:
一般來說如果你沒有資料庫,那會把需要分門別類的資料放在不同的檔案比較好管理,像是:
data/lucy.php
data/chan.php
根據登入名稱去取對應的資料,裡面可能會長成這樣:
return [
"realname": "chan",
"tel": 0912345678
];
但我覺得各家的 list 或是 array 都不算很好維護,會蠻推薦改成 yaml:
data/chan.yaml
"realname": "chan"
"tel": 0912345678
然後再用各家語法解析 yaml,PHP 的話推薦 symfony/yaml,養成這個習慣的話資料要轉換語言使用都蠻方便的,但還是推薦資料庫最好啦,在怎樣 sqlite 應該也可以用才對。