2017-07-11 124 views
1

我哈瓦一個字符串,其分裂數組值

$value ='xyz:101,xyz:102,xyz:103,xyz:104,xyz:105,ABC:201,xyz:202,xyz:203,xyz:204,xyz:205'; 

而且我想告訴喜歡

<table width='50%' border='1' cellpadding='10' cellspacing='10'> 
 
    <tr> 
 
    <th>Category</th> 
 
    <th>Code</th> 
 
    </tr> 
 
    <tr> 
 
    <td>XYZ</td> 
 
    <td>101</td> 
 
    </tr> 
 
    <tr> 
 
    <td>XYZ</td> 
 
    <td>102</td> 
 
    </tr> 
 
    <tr> 
 
    <td>XYZ</td> 
 
    <td>103</td> 
 
    </tr> 
 
    <tr> 
 
    <td>XYZ</td> 
 
    <td>104</td> 
 
    </tr> 
 
    <tr> 
 
    <td>XYZ</td> 
 
    <td>105</td> 
 
    </tr> 
 
    <tr> 
 
    <td>ABC</td> 
 
    <td>201</td> 
 
    </tr><tr> 
 
    <td>ABC</td> 
 
    <td>202</td> 
 
    </tr> 
 
    <tr> 
 
    <td>ABC</td> 
 
    <td>203</td> 
 
    </tr> 
 
    <tr> 
 
    <td>ABC</td> 
 
    <td>204</td> 
 
    </tr> 
 
    <tr> 
 
    <td>ABC</td> 
 
    <td>205</td> 
 
    </tr> 
 
</table>

任何人可以幫助在表中該值我爲此

+0

XYZ:101是關鍵:值對...?如果是值,那麼它是數組還是簡單的字符串? – pAsh

+0

它是一個值對 –

+0

數組或字符串? –

回答

1

請檢查下面提到的解決方案。這會幫助你。

$str = 'xyz:101,xyz:102,xyz:103,xyz:104,xyz:105,ABC:201,xyz:202,xyz:203,xyz:204,xyz:205'; 
$array = explode(',', $str); 
$temp = array(); 
foreach ($array as $i => $j): 
    $temp[$i] = explode(':', $j); 
endforeach; 
?> 
<table width='50%' border='1' cellpadding='10' cellspacing='10'> 
    <tr> 
     <th>Category</th> 
     <th>Code</th> 
    </tr> 
    <?php foreach ($temp as $value): ?> 
     <tr> 
      <td><?= $value[0] ?></td> 
      <td><?= $value[1] ?></td> 
     </tr> 
    <?php endforeach; ?> 
</table> 

讓我知道,如果它不起作用。

+0

$ val是關鍵值對@Deshu Yadav在評論中提到 – pAsh

+0

請檢查問題評論。 –

1

即使我不喜歡spoonfeeding,你去那裏:

<?php 
$value='xyz:101,xyz:102,xyz:103,xyz:104,xyz:105,ABC:201,xyz:202,xyz:203,xyz:204,xyz:205'; 

$array = explode(",", $value); 
?> 

<table width='50%' border='1' cellpadding='10' cellspacing='10'> 
    <tr> 
     <th>Category</th> 
     <th>Code</th> 
    </tr> 
    <?php foreach($array as $value) : 
    $exploded = explode(":", $value); 
    $key = $exploded[0]; 
    $value = $exploded[1]; 
    ?> 
     <tr> 
      <td><?php echo $key; ?></td> 
      <td><?php echo $value; ?></td> 
     </tr> 
    <?php endforeach; ?> 
</table> 
+0

$ val是@Deshu Yadav在評論 – pAsh

0

如果鍵值對使用的foreach:

foreach ($value as $key => $v) { 
    echo "<tr>";  
    echo "<td>".$key."</td>"; 
    echo "<td>".$v."</td>"; 
    echo "</tr>"; 
} 
3

爆炸的逗號和冒號和你的價值觀獲取一個數組。然後相應地輸出它們。

$value='xyz:101,xyz:102,xyz:103,xyz:104,xyz:105,ABC:201,xyz:202,xyz:203,xyz:204,xyz:205'; 

$arr = explode(",", $value); 

Foreach($arr as $pair){ 
    $parts =explode(":", $pair); 
    Echo "<tr>\n<td>"; 
    Echo $parts[0]; 
    Echo "</td>\n<td>"; 
    Echo $parts[1]; 
    Echo "</td>\n</tr>"; 
} 

https://3v4l.org/TbtbX

+0

中非常感謝的關鍵值對。它的工作 –

+0

感謝鏈接到https://3v4l.org/ – simhumileco

+0

@simhumileco肯定...還有什麼我可以幫你嗎? ;-) – Andreas

0

如果value=''是你的字符串的一部分;這段代碼

$string = "value='xyz:101,xyz:102,xyz:103,xyz:104,xyz:105,ABC:201,xyz:202,xyz:203,xyz:204,xyz:205'"; 
$matches = array(); 
preg_match('/value=\'([^\']*)\'/i', $string, $matches) ; 
$content = $matches[0]; 

獲得報價內容,並使用此代碼來生成表:

echo "<table width='50%' border='1' cellpadding='10' cellspacing='10'>"; 
$array = explode(',', $content); 
foreach ($array as $item) { 
    $data = explode(':', $item); 
    echo "<tr>"; 
    echo " <th>$data[0]</th>"; 
    echo " <th>$data[1]</th>"; 
    echo "</tr>"; 
} 
echo "</table>"; 
+0

不要使用正則表達式來分割一個簡單的字符串。 – Andreas

+0

@Andreas我解釋過'如果value =''是字符串'的一部分'使用正則表達式,它不適用於拆分 – aidinMC

+0

是的!使用substr()如果你知道前七個字符不應該在那裏,最後一個使用substr。這就是這個功能的作用。然而,正則表達式並不意味着分割簡單的字符串。你在使用substr和explode可以完成的簡單任務中使用更多的時間和內存。在我看來,答案很差。 – Andreas

0

使用explode()foreach

<?php 

$value = 'xyz:101,xyz:102,xyz:103,xyz:104,xyz:105,ABC:201,xyz:202,xyz:203,xyz:204,xyz:205'; 

$rows = explode(',', $value); 

?> 
<table width='50%' border='1' cellpadding='10' cellspacing='10'> 
    <tr> 
     <th>Category</th> 
     <th>Code</th> 
    </tr> 
<?php 

foreach ($rows as $row) { 
    $values = explode(':', $row); 

?> 
    <tr> 
     <td><?php echo $values[0]; ?></td> 
     <td><?php echo $values[1]; ?></td> 
    </tr> 
<?php 

} 

?> 
</table> 

僅供參考,請參閱:

有關示例,請參見: