PHPについて次の質問にご回答ください。


「test.php」というファイルに「ももんが」という文字を記入したくて、
下記のようなスクリプトを作成しました。

$test_file="test.php";
$wordss="ももんが";
$fp=@fopen($test_file,"w");
fputs($fp,$wordss);
fclose($fp);

これをユーザ定義関数にしてください。
実はユーザ定義関数に必要とされる「引数」と「return」の概念がさっぱりわからないので、
上のスクリプトに沿って初心者にもわかるよう解説していただけると助かります。

以上、よろしくお願いします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2008/02/12 20:47:11
  • 終了:2008/02/12 23:09:02

回答(1件)

id:hatettyo No.1

hatettyo回答回数23ベストアンサー獲得回数22008/02/12 22:11:32

ポイント60pt

関数の使い方という事でしょうか?

taroemonさんのスクリプトを

・書き込む単語をその都度指定

・書き込むファイルをその都度指定

という条件で関数を作成すると下記のようになります。

function create_file($word,$file){
$fp=@fopen($file,"w");
fputs($fp,$word);
fclose($fp);
}

この関数を呼び出すには

create_file('単語','ファイル名');

とすれば指定の単語が指定のファイルに書き込まれます。

taroemonさんのスクリプトだとreturnを使う必要はないと思われますが・・・

参考までに

下記の関数は単語を指定すればタイムスタンプをファイル名にしたファイルを作成してくれます。

そして関数からはファイル名が返ってきます。

function create_file($word){
$file_name = time().".txt";
$fp=@fopen($file_name,"w");
fputs($fp,$word);
fclose($fp);

return $file_name;
}

この関数は下記のように使います。

$file = create_file('文字列');
echo $file
//ファイル名が表示されます。

引数とは関数が受け取る値でreturnは関数が返す値です。

関数が値を受け取り処理をして結果を返す。という使い方でしょうか。

http://ww7.tiki.ne.jp/~inabah/php/004_001.htm

id:taroemon

ご回答ありがとうございます。

関数の使い方がわかりませんでしたのです。でもやっと理解できました。

returnについては役割とかどんなときに使うのかと言うことがわかりませんでした。

これをもとに調べてみることにします。

タイムスタンプでファイルを作成する方法参考になりました。

2008/02/12 23:08:41
  • id:KUROX

    function writeFile($fname,$text) {
    $fp=@fopen($fname,"w");
    fputs($fp,$text);
    fclose($fp);
    return "0K";
    }

    $test_file="test.php";
    $wordss="ももんが";
    $ret = writeFile($test_file,$wordss);
    print($ret);

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません