問題タブ [file-get-contents]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - HTTP ステータス コードに関係なく、ページのコンテンツを取得するにはどうすればよいですか?
私は現在file_get_contents()
、認証APIのようなページのコンテンツを取得するために使用しています。ほとんどの人が使用するデフォルトのシステム (デフォルトの HTTP/1.1 200 ステータス コードを使用するだけ) ではうまく機能しますが、さまざまなエラーに対して関連する HTTP ステータス コードを送信する人もいます。たとえば、401 PASSWORD_FAIL の場合、HTTP ステータスが 401 に設定され、取得したい部分であるページに「PASSWORD_FAIL」が出力されます。しかし、401 ステータス コードによってfile_get_contents()
エラーが発生し、何も実行されません。ページのコンテンツを取得し、HTTP ステータス コードを無視するために使用できる最も単純な PHP 関数は何ですか?
php - PHPinifile_get_contents外部URL
私は次のPHP関数を使用します:
file_get_contents('http://example.com');
特定のサーバーでこれを行うと、結果は空になります。他の場所でそれを行うと、結果はページのコンテンツが何であれです。ただし、結果が空のサーバーで、関数をローカルで使用する場合は、外部URL(file_get_contents('../simple/internal/path.html');
)にアクセスせずに機能します。
今、私はそれが特定のphp.ini構成と関係があるとかなり確信しています。しかし、私がよくわからないのは、どれかです。助けてください。
php - 成功またはエラーになるまでPHP再試行スクリプト
これをお読みいただきありがとうございます。コンテンツの品質に関係なく、すべての回答に感謝いたします。:)
エラーメッセージが表示されるまで、別のphpスクリプトを最大3回再試行するphpスクリプトを作成しようとしています。私はおそらくこれがphpループを使用して行うことができると思いますか?コードが最初に正常に機能する場合は、3回再試行する必要はありませんが、最初に機能しない場合は、エラーメッセージが表示されるまで、phpスクリプトを最大3回再試行する必要があります。 。
phpコーディングを使用して、「file_get_contents」を使用して別の場所からコンテンツを取得/フェッチし、その後、各単語/データにphp変数を与えるスクリプトを作成することができました。これはすべて、stackoverflowで他のメンバーから助けを得ることによって行われました(私は非常に感謝しています)。以下のコードはそれをすべて行うものです:
そこで、このスクリプトを最大3回再試行するある種のループを追加したいと思います。初めて動作しない場合。
スクリプトが1回目、2回目、3回目で動作するかどうかを判断するには、「file_get_contents」を使用するときに「#endofscript」または「failure」というテキストを見つける必要があります。テキスト「#endofscript」は変数「$no9」にあり、テキスト「failure」は変数「$no2」にある必要があります。「#endofscript」または「failure」以外のものが見つかった場合は、エラーとしてカウントされ、見つかるまでループする必要があります。3回目の試行でも見つからない場合は、エラーメッセージが表示される可能性がありますか?「エラー-再試行してください」など。
すべてのご協力に感謝します、そして私は一つ一つの返事に感謝します。詳細が必要な場合は、お気軽にお問い合わせください。:)そしてまた、私はこれに本当に感謝しています。:)
php - PHPのURLから複数のファイルをダウンロードするにはどうすればよいですか?
私はこの配列を持っています。
PHPを使用してこれらのファイルを同時にダウンロードしたいと思います。
それ、どうやったら出来るの?助言がありますか?
ヘッダーをforループに入れてみましたが、すべてのファイルのコンテンツを1つの大きなmp3ファイルにまとめています。
これは私が試したものです:
ありがとうVishal
php - レンダリング時に元のページとは異なる cURL Html 出力
cURL または file_get_contents を使用してページをフェッチするプロジェクトに取り組んでいます。問題は、取得した html をエコーしようとすると、出力が元のページとは異なるように見え、すべての画像が表示されないことです。解決策があれば教えていただきたいです。私のコード
ありがとう
php - file_get_contentsが存在するファイルを見つけていません
別のスクリプトを使用してアクセスしたいファイルがありますfile_get_contents
アクセスしたいファイルはその上のディレクトリにあるので、使用していますfile_get_contents('../file.php?this=that')
しかし、戻ってきNo such file or directory
て、理由がわかりません。ファイルはそこにあります。
リモートではなくローカルファイルであることに関係があると思います。アイデアや回避策はありますか?
php - File-get-contentsがストリームを開くことができませんでした
file_get_contentsを使用しようとしています。php.iniでallow_url_fopenが有効になっていることを確認しました。今のところ、それは私に言っています:
[function.file-get-contents]:ストリームを開くことができませんでした:HTTPリクエストが失敗しました!HTTP /1.1401無許可
私がしているのは次のことだけです。ブラウザから問題なくアクセスできます。
これは認証の問題だと思いますが、スクリプト自体から適切なクレデンシャルを提供する方法がわかりません。任意のアイデアをいただければ幸いです。
php - php file_get_contents()とGoogle Chart APIの文字制限?
私が取り組んでいる特定の問題は、Google Charts APIでhttpsを有効にすることと、URL文字列でphpfile_get_contentsを使用するときに発生する可能性のある文字数制限です。何が起こっているのかをご紹介します。特にhttpsを有効にするために、ネット上のいくつかのチュートリアルを使用して順調に進歩しました。私はこのチュートリアルの「基本的な方法」を使用しています。
http://webguru.org/2009/11/09/php/how-to-use-google-charts-api-in-your-secure-https-webpage/
このコードを含むchart.phpファイルがあります:
私はメインページからこのファイルを呼び出して、「テスト」GoogleチャートURL(私は多くの異なるものを使用しました)をそれに渡します。これは513文字の長さです。
メインページに画像を表示するには、次のコードを使用しています。
$ chartUrl文字列の例では、何も表示されません。$ chartUrl文字列の長さが512文字(エンコードされていない)を超えるまでは正常に機能します。たとえば、以下の文字列(512文字の長さ)を使用する場合:
チャートが表示されます。文字列の違いは1文字です。最終バージョンで使用する「実際の」GoogleチャートAPI文字列は、約1250文字の長さです。
では、これはget_file_contents()の制限ですか?私は代わりにcURLを見てきましたが、その詳細は私の頭に浮かびます。誰かが文字の制限を確認し、可能であればいくつかの提案をすることができますか?
どうもありがとう、ニール
php - phpでfile_get_contents($ string)によって処理された実際の$stringを表示します
サーバーで古いバージョンのphpを使用せざるをfile_get_contents();
得ませんが、現在のバージョンのphpでは問題が発生しないため、関数にバグがあるようです。これはバグだと思います。
$string
クエリパラメータを含む部分にを渡すfile_get_contents($string);
と、返される情報が開発マシンの最新バージョンのphpでまったく同じコードを実行した場合とは異なるため、ある時点で切り捨てられるようです。
私の質問は、処理された正確な文字列をどのように確認できるかfile_get_contents();
です。何を送信したかはわかりますが、送信したとおりに処理されているとは思いません。デバッガーなどを介してすべての関数の内部を表示するための一般的な答えがあるかもしれません。デバッガーを使用する必要がありますか、それとも画面に情報を印刷する方法はありますか?
php - PHP file_get_contentsはタイムアウトを無視しますか?
私が得る応答は一般的に21.232秒です、約5秒であるべきではありませんか?
ini_set行のコメントを外しても、まったく役に立ちません。