![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
rimyと申します。
windowsでapacheを使用していて、PHP5をインストールしています。
PHPは作動していて、スプリクトは実行できます。
しかしfopen関数を使ってファイルをロードしようとしたところ なぜかエラーが起きます。
fopen関数は fopen('ファイルパス','モード'); でやれるので
やってみましたが、
Warning: fpassthru(): supplied argument is not a valid stream resource in C:\Apache\htdocs\test\reading.php on line 6
という表示が出ます。
ちなみにスプリクトは
<html>
<head><title>ファイルの読み出し</title></head>
<body>
<?php
$text = fopen("test.txt","b""r");
fpassthru($text);
?>
</body>
</html>
と書いてあります。
あるサイトで windows環境では モードにbを入れろ と書いてありましたがどういうことでしょうか。
まだ最近 勉強し初めでわかりませんのでよろしくお願いします。
No.4
- 回答日時:
#3の回答で解決してます?
> 正しく $text =fopen("test.txt","b""r");でやると
"b""r" と並べても、それはひとつの文字列とはみなされません。
そしてこれら二つの間に何の演算子もないので、エラーになっているというわけです。
"rb" か "br" という形でまとめてやれば、「読み込みモードかつバイナリモード」
でオープンするはずです。
今回はオープンしようとしている対象の拡張子が '.txt'なので、
バイナリモードにする必要は多分ありません。
ご回答ありがとうございました
みなさんの言うとおり
<html>
<head><title>ファイルの読み出し(1行)</title></head>
<body>
<?php
$text = fopen("test.txt","rb");
fpassthru($test);
?>
</body>
</html>
で実行してみると
Warning: fpassthru(): supplied argument is not a valid stream resource in C:\Apache\htdocs\test\reading.php on line 6
以上のエラーが出ます
どうしてでしょうか?
No.3
- 回答日時:
こういうことかな
$text = fopen("test.txt","rb");
fpassthru($test);
↓参考:fpassthru
参考URL:http://jp.php.net/manual/ja/function.fpassthru.php
No.2
- 回答日時:
> $text = fopen("test.txt","b""r");
このfopenの引数ですが、本当にこれですか?
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in o.php on line 2
てなエラーになるんですが。
仮にカンマを忘れていたのなら、
resource fopen ( string $filename, string $mode [, bool $use_include_path [, resource $context]] )
にあるように、"r" は第三引数になります。
そのせいで fopenが成功していないとかじゃないですか?
モードに'b'を含めるかどうかという話は
以下のリンクにある記述を参考にするとよいでしょう。
PHP: fopen - Manual
http://jp.php.net/fopen
この回答への補足
失礼しました
コードの書き換えで失敗していて
もとのコードが
$text ='fopen("test.txt","b""r")';
になっていました
正しく $text =fopen("test.txt","b""r");でやると
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in C:\Apache\htdocs\test\reading.php on line 5
になります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHPでユーザー情報を入力して簡易ログイン機能をつくってみたのですが 1 2023/05/29 08:51
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- PHP php ログイン 1 2022/11/01 00:24
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- PHP PHPプログラムの間違い 1 2022/10/06 14:33
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
フォントの色を変えるには?
-
502 Bad Gatewayの解決方法
-
「@$変数」の「@の意味は?」
-
パースエラーとは?
-
PHPにて外部サイト内容が取得不...
-
PHPでfatal errorが出ても無視...
-
トランザクションが原因?DBに...
-
ローカルでは正常に動くのにサ...
-
iframeからのアクセスか、ブラ...
-
SELECTの値を保持する
-
file_get_contents使用時のエラ...
-
正規表現での最後尾のバックス...
-
php7のhtmlentitiesはEUC-JPを...
-
xmlの宣言文をPHPで出力するには
-
php5.6でsimplexml_load_string...
-
ローカルで動いているPHPがタイ...
-
PHPでOut of memoryのエラー解...
-
PHP5のセッション管理に使う$...
-
環境をかえたら header(Locati...
-
PHPのストアドプロシージャ仕様
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
フォントの色を変えるには?
-
PHP8を使うと、大量のWarningが...
-
トランザクションが原因?DBに...
-
ワードプレスサイト PHP8.0.25...
-
PHPで、エラーがない場合のみ画...
-
「@$変数」の「@の意味は?」
-
パースエラーとは?
-
phpでクラスのメソッドで同名の...
-
phpでget_headers()が使えない?
-
PHPでネットワークドライブのop...
-
PHPでfatal errorが出ても無視...
-
phpでPEAR::DBを使っているので...
-
awsにApacheとPHPを入れて、何...
-
error_reporting(0);にも関わら...
-
正規表現での最後尾のバックス...
-
これは例外処理でしょうか?
-
SELECTの値を保持する
-
PHPにて外部サイト内容が取得不...
-
iframeからのアクセスか、ブラ...
-
PHP mb_send_mail メール送信 5...
おすすめ情報