ホームページ > バックエンド開発 > PHPチュートリアル > PHP の file_get_contents() はカスタム HTTP ヘッダーを送信できますか?

PHP の file_get_contents() はカスタム HTTP ヘッダーを送信できますか?

Mary-Kate Olsen
リリース: 2024-12-10 05:42:12
オリジナル
523 人が閲覧しました

Can file_get_contents() in PHP Send Custom HTTP Headers?

file_get_contents() による HTTP ヘッダーのカスタマイズ

PHP の file_get_contents() 関数は、Web リソースを取得するための多用途ツールです。多くの場合、限られたオプションで使用されるため、ユーザーはその全機能について疑問を抱いています。特に、file_get_contents() を使用してカスタム HTTP ヘッダーを送信することは議論の対象となっています。

可能ですか?

はい、カスタム HTTP ヘッダーを送信することは可能です。 file_get_contents() を使用します。これは、stream_context_create() を使用してストリーム コンテキストを作成し、http オプションに必要なヘッダーを設定することで実現できます。

// Create a stream context with custom headers
$opts = [
    "http" => [
        "method" => "GET",
        "header" => "Accept-language: en\r\nCookie: foo=bar\r\n"
    ]
];
$context = stream_context_create($opts);

// Retrieve the web resource using the custom stream context
$file = file_get_contents('http://www.example.com/', false, $context);
ログイン後にコピー

この例では、「Accept- language」ヘッダーと「Cookie」ヘッダーを設定します。ただし、必要に応じて有効な HTTP ヘッダーを追加できます。

代替案アプローチ

カスタム ストリーム コンテキストを使用した file_get_contents() は実行可能なオプションですが、カスタム HTTP ヘッダーの送信に使用できる代替関数もあります。

  • curl_init(): さらに多くの機能を提供します。カスタム ヘッダーを設定する機能など、HTTP リクエストに対するきめ細かい制御。
  • fopen() $protocol == 'http:': ヘッダー操作を可能にする HTTP ストリーム リソースを作成します。

使用する関数の選択は、プロジェクトの特定の要件と設定によって異なります。

以上がPHP の file_get_contents() はカスタム HTTP ヘッダーを送信できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート