我有一个包含列 id、f1、f2、f3、...、f20 的 mysql 表,其中 id 是产品 ID,f1、...f20 是产品特性。根据每种产品的不同,有些产品可能会填充全部、不填充或仅填充一些列。
每列包含一个分隔字符串,如 a#b#c#d,其中 a、b、c、d 是不同语言的值(a=英语、b=法语等)
我需要通过它的 id 选择一行,用'#'分解每列的值(f1,f2 ...)以获得我需要的语言部分,然后将值传递给数组以便使用在我的产品规范页面中。
我如何遍历获取的行(我正在使用 $row = my_fetch_array)并将展开后的值放入一维数组中,例如 $specs=('green', 'M', '100', 'kids '...) ETC? PS:我知道,这很复杂,但我现在想不出更好的主意。
最佳答案
试试这个:
$result = mysql_query("...");
while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
$arr = array();
foreach ($row as $k=>$v)
{
$features = explode("#", $v);
$value = $features[1]; // get the specific language feature
$arr[] = $value;
}
$specs = join(", " , $arr);
}
关于php & mysql - 遍历单行的列并将值传递到数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8523529/