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

PHPについて質問です。

「sample.php」というファイルを新規で作成して、
そこに「print "ももんが";」を実行するスクリプトを作成してください。

ファイルへの書き出しは通常「fwite」関数を使うのでしょうが、
これまで作ったスクリプトをそのファイルで実行するということが目的ですので、
print関数を実行するスクリプトでお願いします。

質問者はまだ初心者なので、
自分のやりたいことをうまく質問することもままなりません。
不明瞭な場合はコメントをいただければ幸いです。

●質問者: taroemon
●カテゴリ:コンピュータ
✍キーワード:PHP print コメント スクリプト ファイル
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● bayan
●60ポイント

おはようございます。


> 「sample.php」というファイルを新規で作成して、

> そこに「print "ももんが";」を実行するスクリプトを作成してください。


sample.php というファイルを作成して、その中に 「print "ももんが";」 を

実行するPHPスクリプトを書き込むということでしょうか。

// $fname ファイル名
// $text 書き込む内容
// 戻り値 書き込んだバイト数、失敗なら -1
function write_file($fname, $text) {
 $len = -1;
 $fp=@fopen($fname,"w");
 if($fp){
 $len = fputs($fp,$text);
 fclose($fp);
 }
 return $len;
}

$script = '<?php print "ももんが"; ?>';
write_file("sample.php", $script);

http://q.hatena.ne.jp/1202816828 で皆さんが回答されている内容と

あんまり変わらないですね。


PHP5までは文字列をファイルに書き込む簡単な関数がないので、

ユーザ定義関数を用意していますが、PHP5からは file_put_contents という

関数が利用できます。これを使えば次のように書けます。

$script = '<?php print "ももんが"; ?>';
file_put_contents("sample.php", $script);


でも恐らくここまでの回答はハズしていそうですね。。。


> ファイルへの書き出しは通常「fwite」関数を使うのでしょうが、

> これまで作ったスクリプトをそのファイルで実行するということが目的ですので、

> print関数を実行するスクリプトでお願いします。


すみません。ここのくだりがちょっとわかりませんでした。。。

が推測で回答してみます。

例えば次の内容で hoge.php があるとします。

<?php
print "ももんが";
?>

同じディレクトリ(フォルダ)にある sample.php を実行するときに、

この hoge.php の内容を読み込んで実行したいということであれば、

include 文が使えます。

次のように sample.php を書きます。

<?php
include "hoge.php";
?>

http://www.php.net/manual/ja/function.include.php


大雑把に言うと、include "hoge.php"; と書いた場所に、hoge.php の内容が

埋め込まれるイメージになります。


include の仲間には、同じファイルの読み込みは1度だけ行う include_once や、

対象のファイルが読み込めないときはエラーになる require や require_once も

あります。

こんなことで、やりたいことに近づけるでしょうか。

共通に使えるユーザー定義関数や定数を別のファイルに書いておき、

いろいろなPHPスクリプトから「インクルードする」ということがよく行われます。

(共通に使えるものを一箇所にまとめる、同じものをあちこちに書かない)

◎質問者からの返答

こんばんは。


ご回答いただいてから、ずっと悩んでいたので、

すでにもう「こんばんは」の時間になってしまいました。

やはり、僕がやりたかったことはご指摘の

「include」を使うことによって実現できるようです。


質問が不明瞭で大変失礼しました。

しかし、おかげでひとつPHPを理解することができました。

また質問しますので、今後もいろいろ教えてください。

関連質問


●質問をもっと探す●



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