我的问题非常简单。我想将文本区域中的新行更改为<br>
标签但是我需要将最终字符串作为单行文本。我尝试使用nl2br
函数,但结果我得到了带有<br>
标记和新行的字符串。我还尝试使用<br>
简单地用str_replace
替换&amp;#013或&amp;#010符号,但它不起作用。
以下是我最新代码的示例:
Godziny otwarcia: <textarea name="open" rows="3" cols="20">'."$openh".'</textarea>
<input type="submit" name="openb" value="Zmień"/><br>
if($_POST['openb']) {
$open = $_POST['open'];
str_replace('
', '<br>', $open);
change_data(21, $open);
}
$openh
是这样的结果:
$tab = explode('<br>', $openh);
$openh = null;
for($i=0;$i<count($tab);$i++)
$openh = $openh . $tab[$i] . '
';
(是的,我知道我可以使用str_replace
,不要问我为什么这样做)
原始$openh
是$openh = 'Pon-pt 9:00-17:00<br>Środa 12:00-17:00'
此外,您可能希望看到我的change_data
函数,因为它与我需要字符串在一行中的原因相关联,所以这里是:
function change_data($des_line, $data) {
$file = 'config.php';
$lines = file($file);
$i=1;
foreach($lines as $line_num => $line) {
$wiersz[$i] = $line;
$i++;
}
$change = explode("'", $wiersz[$des_line]);
$wiersz[$des_line] = $change[0] . "'" . $data . "'" . $change[2];
$i = 1;
$f = fopen($file, w);
while($i <= count($wiersz)) {
fwrite($f, $wiersz[$i]);
$i++;
}
fclose($f);
header('location: index.php?p=admin');
}
我不是PHP专家,所以有时候我做的事情很难“很难”。我在逐行阅读文件config.php
时遇到了很大的问题,这些是我几小时努力的结果:(
答案 0 :(得分:10)
$open=str_replace(PHP_EOL,"<br>",$_POST["open"]);
答案 1 :(得分:0)
有一个现成的 PHP 函数,名为 nl2br