0

下面的 php 函数有两个问题。

下面函数的一个问题是函数回显了函数所在的 $boo 和 $boo2 变量(即在回显 1 和 2 之前)。这两个函数都在 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';
?>

还想知道当文本行有超过 1 个换行符时,如何删除函数中 $boo 变量的换行符。

编辑:示例 $boo 是:

啊啊啊啊

bbbb bbbb

cccc cc

有时它之间可能有或多或少的换行符。

4

3 回答 3

0
function listformat ($list) {
    $listformat = explode("\n", $list);
    $out = '<ul>';
    foreach ($listformat as $line) {
        $out .= "<li>".$line."</li>";
    };
    $out .= '</ul>';
    return $out;
};
于 2013-11-14T02:29:49.313 回答
0

这在函数开始时起作用:

$list = preg_replace("/[\r\n]+/", "\n", $list);
于 2013-11-14T02:41:05.580 回答
0

要删除空格(空格、换行符等),您可以使用trim()

$string = "Testing\n";
$new_string = trim($string);
// $new_string is now "Testing"
于 2013-11-14T02:35:45.307 回答