[英]Turn MySql comma separated values into PHP value
我正在創建一個節日網絡應用程序,我們有兩個不同的網站。 車輛可以“向北”、“向南”或“向南”行駛。
MySQL 表存儲一個逗號分隔的列表,其值為“1”、“2”或“1,2”。
基本上,我需要變量 $site 是; 南北或兩者兼而有之
我已經嘗試了以下(和其他 lsot 迭代)但無法獲得所需的輸出
$a = array($r['site']);
if (in_array(array('1', '2'), $a)) {
$this->site = 'both';
}
if (in_array('1', $a)) {
$this->site = 'north';
}
if (in_array('2', $a)) {
$this->site = 'south';
}
期望的結果是 $this->site 相等;
1 = 北
2 = 南
1,2 = 兩者
在array()
中包裝字符串不會將其拆分為數組。 你可以在它上面使用explode()
,或者一些簡單的東西:
$map = array(1 => 'north', 2 => 'south', '1,2' => 'both');
$this->site = $map[$r['site']];
但是,將逗號分隔的列表存儲在單個數據庫列中並不是一個好主意。 這會變得混亂,假設您還有East和West或North 1和North 2等。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.