2017-08-31 13 views
0

私は、ユーザーフォーム入力に基づいてJavascriptを生成するスクリプトを用意しています。現在、コードはサーバー上のtxtファイルに出力されますが、MySqlデータベースに入れたいと思います。PHP変数に1行ずつ記述できますか?

行をtxtファイルに書き込むのは簡単ですが、コードが生成され、ユーザー入力(さまざまなループなど)に巻き込まれているためにスクリプトに役立ちます。

しかし、私は本当に変数に出力を書き、それをデータベースに送信したいと思います。しかし、私はこれを達成するための方法を見ることができないのですか?

確かに可能ですが、私がオンラインで見つけた情報はかなり基本的な変数作成しか扱っていません。

私が現在行っているようにtxtファイルに書き込んだり、テキストファイルを変数に読み込んだりしてテキストファイルを削除するのが難しいでしょう。しかし、これは愚かで明らかに処理時間の無駄に見えます。

非常にphpのため、上記の場合は申し訳ありませんがダムのようです。

+0

あなたは、あなたが(変数から)テキストの各行を取得し、データベースに書き込みたい – yBrodsky

+0

PHPにAjaxでフォームを送信していないのですか? –

+3

[string concatenation](http://php.net/manual/en/language.operators.string.php)を調べましたか? – aynber

答えて

1

あまりにも難しくありません。最初の行で変数を宣言してから徐々に書き出し、各行を区切るエスケープシーケンス(新しい行を表す)を\nとすることができます。挿入された組み込みのPHP_EOLをコメントとして使用してサイズを調整できます。 = `代入演算子は、操作の前に変数の値に演算子の後の文字列を追加します。

$lines = "my first line"; 
while (condition) { 
    $lines .= PHP_EOL . "my next line"; 
} 

これを行うの派生方法は、ループ内のすべての行を挿入し、ちょうど空の文字列を宣言して開始することになります。

このメソッドは、最後に空白の改行を追加することに注意してください。必要に応じて削除することができます。


あるいは、別の方法は、アレイを作成し、それにプッシュし、次に、改行を使用して文字列にアレイを一緒に接着するimplode関数を使用することであろう。あなたがする必要がどのような

$lines = array(); 
while (condition) { 
    array_push($lines, "my next line"); 
} 
$lines = implode(PHP_EOL, $lines); 
+1

また、より良い相互運用性のためには 'PHP_EOL'です。 –

+1

Thanks @ lawrence-cherone、それを反映するために私の答えを編集しました。 – andrewgu

+0

ありがとう、私はこれで周り遊びます。 – user5838014

関連する問題