web-dev-qa-db-ja.com

展開して配列し、各要素をリストアイテムとして出力します

データベースのテーブルフィールドに一連の数値があります。数値はコンマ '、'で区切られています。私は次のことをしようとしています:

ステップ1:データベースから数値のセットを選択し、それを配列に分解します:

$array =  explode(',', $set_of_numbers);

手順2:foreach loopを使用して、配列の各要素をリストアイテムとして出力します。

foreach ($array as $list_item => $set_of_numbers){
    echo "<li>";
    print_r(array_list_items($set_of_numbers));
    echo "</li>";}

何が悪いのか誰か教えてください。ありがとうございました。

4
user2170133
$numbers = '1,2,3';

$array =  explode(',', $numbers);

foreach ($array as $item) {
    echo "<li>$item</li>";
}
18
Danil Speransky

元の$set_of_numbers1,2,3,4,...のような単なるCSV文字列であるとすると、foreachは「ほとんど」問題ありません。しかし、変数の命名は非常に厄介であり、print-r()の呼び出しは必要ありません。

$array = explode(',', $set_of_numbers);
foreach($array as $key => $value) {
   echo "<li>$key: $value</li>";
}

1,2,3,4 ...の文字列を想定すると、次のようになります。

<li>0: 1</li>
<li>1: 2</li>
<li>2: 3</li>
etc...
2
Marc B

ここにあなたの問題を取り除くためのあなたの質問に対する答えがあります

$Num = '1,2,3,4,5,';
$Array = explode(',',$Num);
foreach ($Array as $Items)
{
echo "<li>&Items</li>"; // This line put put put in the list.
}
0
user49828

これは、次のコードスニペットで簡単に実現できます。

<?php
$my_numbers = '1,12,3.2,853.3,4545,221';
echo '<ul>';
foreach(explode(',', $my_numbers) AS $my_number){
    echo '<li>'.$my_number.'</li>';
}
echo '</ul>';

上記のコードは、次のHTMLを出力します。

<ul><li>1</li><li>12</li><li>3.2</li><li>853.3</li><li>4545</li><li>221</li></ul>

クレジット: http://dwellupper.io/post/49/understanding-php-explode-function-with-examples

0
Pranav Rana
$numbers = "1,2,3";

$array =  explode(",", $numbers);

/* count length of array */
$arrlength = count($array);

/* using for while */
$x = 0; 

while ($x < $arrlength) {

  echo "<li>$array[$x]</li>" . PHP_EOL;
  $x++;

}
echo PHP_EOL;

/* using for classic */
for ($x = 0; $x < $arrlength; $x++) {

  echo "<li>$array[$x]</li>" .  PHP_EOL;

}
echo PHP_EOL;    

/* using for each assoc */
foreach ($array as $value) {

  echo "<li>$value</li>" .  PHP_EOL;

}
echo PHP_EOL;    

/* using for each assoc key */
foreach ($array as $key => $value) {

  echo "<li>$key => $value</li>" .  PHP_EOL;

}
body, html, iframe { 
  width: 100% ;
  height: 100% ;
  overflow: hidden ;
}
<iframe src="https://ideone.com/ZqT4Yi" ></iframe>
0
antelove