人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

プログラムphpに関するお願いです。
codaというmacのエディターにプラグインを入れて使いやすくしようと思っています。

<?php

$input = "";

$fp = fopen("php://stdin", "r");
while ( $line = fgets($fp, 1024) )
$input .= $line;

fclose($fp);

echo '<p>';
echo $input;
echo '</p>';
?>

上記のプログラムをエディターで文字を選択し実行するとテキストの選択された部分の最初と最後に<p>のタグを吐き出してくれます。

例 テキストテキスト
↓↓↓↓↓

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

これを元にして、下記のようなテキスト1行づつにタグを挟むようにするにはどのようにしたらいいでしょうか?



てきすとてきすと
てきすとてきすと
てきすとてきすと



<ul>
<li>てきすとてきすと</li>
<li>てきすとてきすと</li>
<li>てきすとてきすと</li>
</ul>

の様にしたいです。

どなたかこのようなプログラムを教えて頂ければと思います。
よろしくお願いいたします。なお当方プログラムは素人です。


●質問者: daiyaraw
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:echo FP Mac PHP にの
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● tdoi
●250ポイント ベストアンサー

codaというエディタを知らないので、はずしていたらすみません。

マクロみたいなものをPHPで記述できるという認識ですが、よかったでしょうか?

で、ご希望のプログラムはこんな感じでしょうか?

<?php
define("SEP", "\n");

$fp = fopen("php://stdin", "r");
echo "<ul>" . SEP;
while ( $line = fgets($fp, 1024) ) {
 echo "<li>{$line}</li>" . SEP;
}
echo "</ul>" . SEP;
fclose($fp);
?>

改行に問題があるようであれば、先頭の部分を、

define("SEP", "\r\n");

とか、

define("SEP", "\r");

とかに変えて試してみてください。


何かの参考になれば。

◎質問者からの返答

回答ありがとうございました。早速試してみましたができませんでした。

http://www.youtube.com/watch?v=s_p_lLLnLaY

codaの違うプラグインの動画ありがましたので参考までに載せておきます。

上手く文字と行を認識してくれてないのでしょうか?


すみません。できました。プログラムあっていました。

改行コードを無視していて、そのままコピペしてしまい(当方Mac)

プログラムがうまく動いていませんでした。

どうもありがとうございました。


2 ● pahoo
●250ポイント

ご質問のプログラムを下記のように変更すれば対応可能です。

★印の行が変更箇所です。

<?php
$input = "";
$fp = fopen("php://stdin", "r");
while ( $line = fgets($fp, 1024) )
 $input .= ("<li>" . rtrim($line) . "</li>\n"); //★
fclose($fp);
echo "<ul>\n"; //★
echo $input;
echo "</ul>\n"; //★
?>
◎質問者からの返答

すみません。できました。プログラムあっていました。

改行コードを無視していて、そのままコピペしてしまい(当方Mac)

プログラムがうまく動いていませんでした。

どうもありがとうございました。


3 ● tdoi
●0ポイント

Codaで確認できないのでなんですが、挙げてもらったかな変換プラグインのソースから判断すると、こんな感じで動くかもです。

<?
define("SEP", "\n");

$lines = explode(SEP, $_ENV['CODA_SELECTED_TEXT']);
echo "<ul>" . SEP;
foreach ($lines as $line) {
 echo "<li>{$line}</li>" . SEP;
}
echo "</ul>" . SEP;

?>

ちなみに、プラグインの作り方自体には問題ないんですよね?

◎質問者からの返答

tdoiさん

引き続き回答いただきありがとうございます。大変感謝しております。

いろいろと試してみましたが、どうもうまく行きませんでした。

間違ったコードを記載するとエラーがでるので、プラグインの作り方は特に問題がないと思います。

質問に記載したプログラムを文字を選択ぜず、同じ行にカーソルが点滅している状態で実行すると

<pテキスト</p>とはきだしてくれます。

曖昧なかんじですみません。

ご存知かとは思いますが、プラグインの説明サイトのURLを記載しておきます。

http://www.panic.com/jp/coda/developer/howto/plugins.php

よろしくお願いいたします。


解決いたしました。本当にありがとうございました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ