web-dev-qa-db-ja.com

PHPでファイルに書き込む方法は?

PHPをサポートする無料のサーバーにこのスクリプトがあります。

<html>
<body>

<?php
$file = fopen("lidn.txt","a");


fclose($file);
?>

</body>
</html>

ファイルlidn.txtを作成しますが、空です。

ファイルを作成して何かを書き込むには、たとえば「Cats chase mice」という行を使用するにはどうすればよいですか?

79
brilliant

file_put_contents($filename, $content)fopen()、およびfwrite()を連続して呼び出してファイルにデータを書き込むのと同じ、fclose()などの高レベル関数を使用できます。

ドキュメント: file_put_contents

109
Savageman

fwrite() を検討してください:

<?php
$fp = fopen('lidn.txt', 'w');
fwrite($fp, 'Cats chase mice');
fclose($fp);
?>
69
sathish
$fp = fopen('lidn.txt', 'w');
fwrite($fp, 'Cats chase');
fwrite($fp, 'mice');
fclose($fp);

http://php.net/manual/en/function.fwrite.php

18
Pesse
$text = "Cats chase mice";
$filename = "somefile.txt";
$fh = fopen($filename, "a");
fwrite($fh, $text);
fclose($fh);

fwrite()を使用します

8
lemon

ファイルを書くのは簡単です:

$fp = fopen('lidn.txt', 'w');
fwrite($fp, 'Cats chase mice');
fclose($fp);

PHPのファイルに書き込むには、次の手順を実行する必要があります。

  1. ファイルを開く

  2. ファイルに書き込む

  3. ファイルを閉じます

    $select = "data what we trying to store in a file";
    $file = fopen("/var/www/htdocs/folder/test.txt", "a");
    fwrite($file  , $select->__toString());
         fclose($file );
    
4

手順は次のとおりです。

  1. ファイルを開く
  2. ファイルに書き込む
  3. ファイルを閉じます

    $select = "data what we trying to store in a file";
    $file = fopen("/var/www/htdocs/folder/test.txt", "w");        
    fwrite($file, $select->__toString());
    fclose($file);
    
4
user10603371

次のコードを使用して、Webディレクトリにファイルを書き込みます。

write_file.html

<form action="file.php"method="post">
<textarea name="code">Code goes here</textarea>
<input type="submit"value="submit">
</form>

write_file.php

<?php
// strip slashes before putting the form data into target file
$cd = stripslashes($_POST['code']);

// Show the msg, if the code string is empty
if (empty($cd))
    echo "Nothing to write";

// if the code string is not empty then open the target file and put form data in it
else
{
    $file = fopen("demo.php", "w");
    echo fwrite($file, $cd);

    // show a success msg 
    echo "data successfully entered";
    fclose($file);
}
?>

これは動作するスクリプトです。サイトで使用する場合は、フォームアクションのURLとfopen()関数のターゲットファイルを必ず変更してください。

幸運を。

4
starkeen

fwrite()はsmidgenより高速で、file_put_contents()はとにかくこれら3つのメソッドの単なるラッパーであるため、オーバーヘッドが失われます。 記事

file_put_contents(ファイル、データ、モード、コンテキスト):

file_put_contentsは文字列をファイルに書き込みます。

この関数は、ファイルにアクセスするときにこれらの規則に従います。FILE_USE_INCLUDE_PATHが設定されている場合、filenameのコピーのインクルードパスを確認します。ファイルが存在しない場合は作成し、ファイルを開いてロックしますLOCK_EXが設定されている場合はファイル、FILE_APPENDが設定されている場合はファイルの最後に移動します。それ以外の場合は、ファイルの内容を消去します。データをファイルに書き込み、ファイルを閉じてロックを解除します。この関数は、成功するとファイルに書き込まれた文字の数を返し、失敗するとFALSEを返します。

fwrite(file、string、length):

fwriteは、開いているファイルに書き込みます。この関数は、ファイルの終わりまたは指定された長さに達したときのいずれか早い方で停止します。書き込まれたバイト数を返します。失敗した場合はFALSEを返します。

4
A.D.