以下の php 関数には 2 つの問題があります。
以下の関数の 1 つの問題は、関数がある場所 (つまり、1 と 2 がエコーされる前) に、関数が $boo 変数と $boo2 変数をエコーすることです。両方の関数が 1 と 2 の前にエコーされます。「return」で関数を途中で終了することなく、各関数が呼び出された変数を返す方法がわかりません。
$boo 変数は、単一の改行またはテキストの段落です。
<?php
function listformat ($list) {
$listformat = explode("\n", $list);
echo '<ul>';
foreach ($listformat as $line) {
echo "<li>".$line."</li>";
};
echo '</ul>';
};
listformat($boo);
echo '1';
listformat($boo2);
echo '2';
?>
また、テキスト行に複数の改行がある場合、関数内の $boo 変数の改行をどのように削除できるか疑問に思っています。
編集: サンプル $boo は:
あああああああ
bbbbbbbb
cccc c cc
場合によっては、間に改行が多かれ少なかれ含まれる場合があります。