MYSQL将逗号分隔值插入单独的字段?

时间:2012-01-18 01:53:12

标签: php mysql

我知道这是一个奇怪的问题,但我有一个输入字段可以对位置进行实时搜索。最终值显示如下:

State,Suburb,Post Code

NSW,Sydney,2210

我现在需要做的是将三个值拆分为单个值,并将它们更新为一行的单独字段。

我不想更新多行,只想更新一行。

例如:

fields ( state | suburb | postcode ) values ( NSW | sydney | 2210 )

我将使用哪些php命令来分割这些逗号并为每个项创建单个$值?

5 个答案:

答案 0 :(得分:2)

对字符串使用explode。

$values = 'A,B,C,D';
$values = explode(',', $values);

然后可以从索引为0的数组中访问每个项目。

答案 1 :(得分:1)

$val = "NSW,Sydney,2210";
$valArr = explode(",", $val);
$query = "UPDATE MyTbl SET State = '$valArr[0]', Suburb = '$valArr[1]', Post_Code = '$valArr[2]' WHERE ...";

答案 2 :(得分:0)

我认为最简单的方法,请参阅explode的手册:

$result_array = explode(',', $your_variable);

答案 3 :(得分:0)

list($state, $suburb, $postcode) = explode(',', $value);

答案 4 :(得分:0)

这会有用吗?

$header = "State,Suburb,Post Code"
$items = explode(",", $input)
$output = implode("|", $items)

因此输出将变为State|Suburb|Post Code

分别访问每个值,您可以使用$items[0]$items[1] ..

$data = "NSW,Sydney,2210"
$items = explode(",", $input)
$output = implode("|", $items)

因此输出将变为NSW|Sydney|2210