• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:phpでテキストファイルの作成)

phpでデスクトップにテキストファイルを作成する方法

このQ&Aのポイント
  • phpを使ってデスクトップにテキストファイルを作成する方法を学んでいます。
  • HTMLとの連動でボタンを作成し、そのボタンを押すとテキストファイルがデスクトップ上に作成されます。
  • 具体的な手順としては、HTMLのボタンを押し、テキストファイルに「あいうえお」という内容を書き込んで作成されたファイルをデスクトップ上に表示します。

質問者が選んだベストアンサー

  • ベストアンサー
  • neko-ten
  • ベストアンサー率55% (1287/2335)
回答No.5

失礼・・・ 「その中にphp.iniがあるなら」 ↓ 「その中にphp.exeがあるなら」 です。 訂正させていただきます あと、すいません、勝手にWindowsという想定をしてしまってました。 が、Linux系統でも基本的には変わりません。 実行ファイルのパスが違うだけですし、X Window使いたいならばX WindowのAPI叩ける何かしらが必要になります。

その他の回答 (4)

  • neko-ten
  • ベストアンサー率55% (1287/2335)
回答No.4

PHPをなんでもいいから実行したいなら、コマンドラインから直接たたけば実行できる。 PHPのディレクトリが、cドラ内phpディレクトリだとして(その中にphp.iniがあるなら)、スクリプトファイルがfoo.phpだとする。 その場合、コマンドラインから C:\php\php foo.php でfoo.phpをスクリプトとして動作させることができる。 phpにパス通しておけば php foo.php で実行ができる。 詳しくは http://php.s3.to/man/features.commandline.html もし、ボタンなり、テキストエリアなり使いたいなら、そういった機能はPHPに存在しないのでPHP単体では利用できない。 .Netあたりぶったたければよかったんだけど、PHPでできるとは聞いたことがない。 なんで、そういったことをしたいならば自前でクエリを送信するプログラムを、WindowsAPI叩ける言語で作るか、すでにあるものを使うことになる。 まぁ、あたりまえだけど作るのはめんどくさい。 というか、C++とかVBつかって組むことになるのでわざわざPHPに飛ばす利点がなくなってしまう。 方法は、一般的にはサーバを介してHTTPアクセスをする方法。てか、PHP自体もともとそんな利用が想定されてた。 あとは、WinBinderとか有志がつくったライブラリ使う方法。 なお、PHP呼び出したんならファイルポインタを置いてしまうなりなんなりご自由になので、一般的なfopen+fwriteでも問題ない。 もちろんfile_put_contentsでもよい。 この方法なら、デスクトップにもファイル作れるし書き込みできるよ。 >セキュリティのレベルは考慮する必要は無いと思います。 >サーバのことを考える必要も無いと思います。 サーバ・サーバセキュリティが必要ないって言うなら、HTMLが必要かもしれないってなるのが、まずよろしくないです。 サーバいらないのなら、HTMLはいらないんじゃなくて「使えない」んです。

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.3

#1です 前述のとおり「今の質問レベルでは理解できないかもしれません」が、 とにかくやろうとしていることに無理があります。 phpをアプリとして実行するのにhtmlを介してやるならサーバーが受けて くれるのが前提になります。サーバー立ててないなら厳しいですね。 単体で動かすためにはCLIモードもあります。phpファイルを単純に実行する だけならなんとかなるかもしれません。(HTMLと連動にはなりません) またデスクトップがOS上でどういう扱いになっているか理解していない節も みられます。まだこの命題に手を出すには覚えなくてはいけないことが 多すぎるのでは?

IWNM_SP
質問者

補足

ファイルに文字列を書き込むfile_put_contentsというプログラムがありますが、これは具体的に実行が出来ないのでしょうか? この際別にテキストファイルを作る必要はありません。既にあるテキストファイルの内容を変更するという意味でも良いです。

  • neko-ten
  • ベストアンサー率55% (1287/2335)
回答No.2

サーバ上にファイルつくるならまだしも、クライアント側に作成することは不可能です。 これが例えば、ローカルPCにサーバを立てて、そのサーバ上で動作をさせるというのであれば、PHPの実行権限内にデスクトップのディレクトリを含むことで操作ができます。 が、それはスクリプトじゃなくてサーバ仕様の問題になりますし、環境でも変わる。 さらに言えば一般のWebにはまったくもって使いどころがない。

IWNM_SP
質問者

お礼

ただ単にボタンを押したらファイルが出るということをしたいだけです。 そのためにHTMLも必要だろうと思ったのでHTMLという表記を加えました。 HTMLが必要ないならそのような使用で構いません。 ただボタンを押した後にファイルが作られるというこちら側の処理でファイルが作られるのであれば問題ありません。

IWNM_SP
質問者

補足

いや、そもそもサーバーを作ることを対称にしていませんし、クライアント側に作成することは想定しておりません。 自分のPC内でプログラムを動作し、自分のPC内のデスクトップにテキストファイルを作成するだけです。 セキュリティのレベルは考慮する必要は無いと思います。 サーバのことを考える必要も無いと思います。

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

今の質問レベルと理解できないかもしれませんが、結論を先に言えば そういうことはできません。 ボタンをおしたらダウンロード処理が始まるのは、まぁなんとかなるでしょう。 それをデスクトップ固定でとなるとセキュリティが大きくかかわってきます。 各人のクライアントPCで特殊なプログラムを動かしてセキュリティレベルを 大きく下げればできますが、実用的だとは言えません。

IWNM_SP
質問者

補足

いや、ネットにつなぐ気は全く持ってありません。 ただ単に自分のPC内で完結した処理を行いたいだけです。 セキュリティとかの問題は全く持って関係ないものと思います。

関連するQ&A

専門家に質問してみよう