dポイントプレゼントキャンペーン実施中!

閲覧頂きましてありがとうございます。
今回は、既に別サイトにて紹介されていたコードを改造したいという内容なので、
必要でしたら、そちらのURLも参照していただければと思っております。


PHPで簡易ブログを作ろう!
http://php.muzin.org/miniblog/

上記サイト内の項目で

「3.テンプレートの利用」
http://php.muzin.org/miniblog/03template.html

にて紹介されている、
「makefile.php(HTMLページ生成用)」
を、改造しているのですが、


そのままだと改行が<br />
になってしまうので、


テストテスト

テスト



と入力した場合、

テストテスト<br />
<br />
テスト

と、なってしまいますが、
これを<p>で囲むことは出来ないでしょうか?
つまり、上記の例題の場合だと

<p>テストテスト</p>

<p>テスト</p>

の、ように、自動挿入したいのです。


そのやり方について、ご存知の方がいらっしゃいましたら、
ご回答宜しくお願い致します。

A 回答 (1件)

nl2p()とかいう関数でも作ればいいんじゃないですかね。



nl2br()も、ただ改行コードを<br />に置換しているだけです。

調べたらでてきました。

function nl2p($string)
{
$paragraphs = '';

foreach (explode("\n", $string) as $line) {
if (trim($line)) {
$paragraphs .= '<p>' . $line . '</p>';
}
}

return $paragraphs;
}

https://stackoverflow.com/questions/7409512/new- …
から引用したコードです。
よく見てないけど正規表現でなんかやろうとしている人もいますね。
    • good
    • 0
この回答へのお礼

javascriptでは、即時関数を作成するのはよく行っていましたが、PHPでは初めてやりました、PHPの構文がまだよくわかっておらず、初心者でお恥ずかしいです。

個人で調べると、提示して頂いたサイトにたどり着くことが出来ず、
見当違いの行動を繰り返していました。

無事に目的も達成出来まして、的確なご意見でとてもたすかりました、
ご回答ありがとうございました。

お礼日時:2018/07/11 14:29

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!