使用php格式化字符串以插入mysql数据库

使用php格式化字符串以插入mysql数据库,php,arrays,string,explode,Php,Arrays,String,Explode,我有以下字符串: $result = "category,date,product,cost car,10/10/2005,toyota,3000 bike,12/12/2007,yamaha,1000"; 我需要将字符串安排成最好的格式以插入数据库(需要高效,因为可能会有大量数据,也不需要第一行) 字符串位于新行上,因此我可以: $n = explode("\n", $result); 它的格式如下: [0] => category,date,product,cost [1] =&g

我有以下字符串:

$result = "category,date,product,cost
car,10/10/2005,toyota,3000
bike,12/12/2007,yamaha,1000";
我需要将字符串安排成最好的格式以插入数据库(需要高效,因为可能会有大量数据,也不需要第一行)

字符串位于新行上,因此我可以:

$n = explode("\n", $result);
它的格式如下:

[0] => category,date,product,cost
[1] => car,10/10/2005,toyota,3000
[2] => bike,12/12/2007,yamaha,1000
现在,我将如何将其格式化以插入到数据库中,解决方案再次需要高效(为了性能),并且我希望不插入第一行,最后在插入时,我希望不插入日期

希望有意义,提前谢谢你的帮助

--------编辑---------------

表(项)由以下字段构成:

category, product, cost

谢谢

如果每次都有相同列的类似字符串,则可以执行以下操作:

$n = explode("\n", $result);

// skip the first row since it's just column names
for ($i = 1; $i <= count($n); $i++)
{
  $cat = $n[$i][[0]; // category
  $date = $n[$i][[1]; // date
  $prod = $n[$i][[2]; // product
  $cost = $n[$i][[3]; // cost

  // and you can put it into a query like so
  $sql = "insert into myTable ('category', 'date', 'product', 'cost') values ('$cat', '$date', '$prod', '$cost')";
}
$n=explode(“\n”,$result);
//跳过第一行,因为它只是列名

对于($i=1;$i比先前回答的帖子有所改进:

$n = explode("\n", $result);

// skip the first row since it's just column names

$sql = "insert into myTable ('category', 'date', 'product', 'cost') values ";

for ($i = 1; $i <= count($n); $i++)
{
  $cat = $n[$i][[0]; // category
  $date = $n[$i][[1]; // date
  $prod = $n[$i][[2]; // product
  $cost = $n[$i][[3]; // cost

  $sql .= "('$cat', '$date', '$prod', '$cost'),";
}

$sql = trim($sql, ",");

if(count($n) != 0)
    mysql_query($sql)
$n=explode(“\n”,$result);
//跳过第一行,因为它只是列名
$sql=“插入myTable('category'、'date'、'product'、'cost')值”;

对于($i=1;$i RTLM):我们不知道您的数据库结构,因此不知道如何格式化任何内容。添加了表结构。我认为您错过了日期嗨,我不是故意错过的。我不想存储日期。str_getcsv()如前所述,这可能是一个更好的想法,因此,我只是想提供一个简单的解决方案。str_getcsv比您的方法简单抱歉,Marc,我只是为了演示目的而展示代码。我鼓励你们每个人,Dagon和Marc,展示您的解决方案,这样Dino可以得到一个更好的示例,因为您知道的比我多:)