我有这个数据数组:
[0] => 15 10 010 Chainmesh Galv 50 x 2.50mm 900mm x 15m ROLL 22.0
[1] => 15 10 020 Chainmesh Galv 50 x 2.50mm 1200mm x 15m ROLL 29.0
[2] => 15 10 030 Chainmesh Galv 50 x 2.50mm 1500mm x 15m ROLL 36.0
[3] => 15 10 040 Chainmesh Galv 50 x 2.50mm x 1800mm x 15m ROLL 43.0
[4] => 15 10 050 Chainmesh Galv 50 x 2.50mm 2400mm x 15m ROLL 54.0
[5] => 15 10 055 Chainmesh Galv 50 x 2.50mm x 3000mm x 15M ROLL 71.0
[6] => 15 20 010 Chainmesh Galv 50 x 3.15mm 1200mm x 15m ROLL 48.0
[7] => 15 20 020 Chainmesh Galv 50 x 3.15mm 1800mm x 15m ROLL 72.0
我需要在下拉菜单中输出此输出: http://screencast.com/t/kWkUuBlq 请看下拉列表的间距,这是我的问题。
现在我有这行代码:
foreach ($array2 as $key => $value) {
$data3 = explode(' ', $value);
for ($i=0; $i < count($data3) -1 ; $i++) {
echo $data3[$i];
}
}
我尝试爆炸数组元素并将其再次存储在新数组中,其间距与图像相同但是,它给了我相同的小间距。谢谢。
答案 0 :(得分:1)
<?php
foreach ($array2 as $key => $value) {
$data3 = explode(' ', $value);
$tempData = array();
for ($i=0; $i < count($data3); $i++) {
if(trim($data3[$i]) != ''){
$tempData[] = trim($data3[$i]);
}
}
$array2[$key] = implode(' ', $tempData);
}
print_r($array2);
?>
Out put:
Array
(
[0] => 15 10 010 Chainmesh Galv 50 x 2.50mm 900mm x 15m ROLL 22.0
[1] => 15 10 020 Chainmesh Galv 50 x 2.50mm 1200mm x 15m ROLL 29.0
[2] => 15 10 030 Chainmesh Galv 50 x 2.50mm 1500mm x 15m ROLL 36.0
[3] => 15 10 040 Chainmesh Galv 50 x 2.50mm x 1800mm x 15m ROLL 43.0
[4] => 15 10 050 Chainmesh Galv 50 x 2.50mm 2400mm x 15m ROLL 54.0
[5] => 15 10 055 Chainmesh Galv 50 x 2.50mm x 3000mm x 15M ROLL 71.0
[6] => 15 20 010 Chainmesh Galv 50 x 3.15mm 1200mm x 15m ROLL 48.0
[7] => 15 20 020 Chainmesh Galv 50 x 3.15mm 1800mm x 15m ROLL 72.0
)
答案 1 :(得分:0)
尝试使用此转换为HTML,然后使用一些CSS来提供您想要的实际外观。
function insertHTML( $val ){
return "<td>" . $val . "</td>";
}
// your array
$array2 = array(
"15 10 010 Chainmesh Galv 50 x 2.50mm 900mm x 15m ROLL 22.0",
"15 10 020 Chainmesh Galv 50 x 2.50mm 1200mm x 15m ROLL 29.0");
$html = "";
foreach( $array2 as $val ){
$array_line = explode(" ", $val);
$htmlArr = array_map( "insertHTML", $array_line );
$html .= "<tr>\n" . implode( "\n", $htmlArr ) . "\n</tr>\n";
}
echo "<table>\n";
echo $html;
echo "</table>";
explode()
函数的字符串,则无法实现。< / p>
答案 2 :(得分:0)
您可以尝试这样
<?php
$a = array (0 => '15 10 010 Chainmesh Galv 50 x 2.50mm 900mm x 15m ROLL 22.0',
1 => '15 10 020 Chainmesh Galv 50 x 2.50mm 1200mm x 15m ROLL 29.0',
2=> '15 10 030 Chainmesh Galv 50 x 2.50mm 1500mm x 15m ROLL 36.0',
3 => '15 10 040 Chainmesh Galv 50 x 2.50mm x 1800mm x 15m ROLL 43.0',
4 => '15 10 050 Chainmesh Galv 50 x 2.50mm 2400mm x 15m ROLL 54.0',
5 => '15 10 055 Chainmesh Galv 50 x 2.50mm x 3000mm x 15M ROLL 71.0',
6 => '15 20 010 Chainmesh Galv 50 x 3.15mm 1200mm x 15m ROLL 48.0',
7 => '15 20 020 Chainmesh Galv 50 x 3.15mm 1800mm x 15m ROLL 72.0');
foreach($a as $key => $v){
echo '['.$key.']' .'='. preg_replace('/\s+/', ' ', $v).'<br>';
}
?>
输出如
[0]=15 10 010 Chainmesh Galv 50 x 2.50mm 900mm x 15m ROLL 22.0
[1]=15 10 020 Chainmesh Galv 50 x 2.50mm 1200mm x 15m ROLL 29.0
[2]=15 10 030 Chainmesh Galv 50 x 2.50mm 1500mm x 15m ROLL 36.0
[3]=15 10 040 Chainmesh Galv 50 x 2.50mm x 1800mm x 15m ROLL 43.0
[4]=15 10 050 Chainmesh Galv 50 x 2.50mm 2400mm x 15m ROLL 54.0
[5]=15 10 055 Chainmesh Galv 50 x 2.50mm x 3000mm x 15M ROLL 71.0
[6]=15 20 010 Chainmesh Galv 50 x 3.15mm 1200mm x 15m ROLL 48.0
[7]=15 20 020 Chainmesh Galv 50 x 3.15mm 1800mm x 15m ROLL 72.0
HTML下拉示例
<?php
$a = array (0 => '15 10 010 Chainmesh Galv 50 x 2.50mm 900mm x 15m ROLL 22.0',
1 => '15 10 020 Chainmesh Galv 50 x 2.50mm 1200mm x 15m ROLL 29.0',
2=> '15 10 030 Chainmesh Galv 50 x 2.50mm 1500mm x 15m ROLL 36.0',
3 => '15 10 040 Chainmesh Galv 50 x 2.50mm x 1800mm x 15m ROLL 43.0',
4 => '15 10 050 Chainmesh Galv 50 x 2.50mm 2400mm x 15m ROLL 54.0',
5 => '15 10 055 Chainmesh Galv 50 x 2.50mm x 3000mm x 15M ROLL 71.0',
6 => '15 20 010 Chainmesh Galv 50 x 3.15mm 1200mm x 15m ROLL 48.0',
7 => '15 20 020 Chainmesh Galv 50 x 3.15mm 1800mm x 15m ROLL 72.0');
echo '<select>';
foreach($a as $key => $v){
echo '<option value="'.$key.'">' . preg_replace('/\s+/', ' ', $v).'</option>';
}
echo '<select>';
?>