#この記事の動作環境: Windows 7 システム、PHP バージョン 7.1、DELL G3 コンピューターphp setcookie エラーの解決策: 1. ブラウザで cookie をオンにします; 2. setcookie() の前に出力された HTTP ヘッダーを削除します; 3. php の setcookie() を使用して cookie を作成します。
phpのsetcookie関数が無効ですか?
最近、Web サイトの PHP バックエンドを作成していたときに、setcookie 関数が常に Cookie を正常に設定できるとは限らず、var_dump() を通じて関数の戻り値が false であることがわかりました。明らかに、設定は失敗しました。Google によると、次の理由により setcookie が失敗することが判明する可能性があります:ブラウザは Cookie を無効にしています。確認する必要はありません。無効になっていないと思います。
php の setcookie() を使用して Cookie を作成することは、php でセッションを開く session_start() と同じです。setcookie() の前に HTTP ヘッダーを出力することはできません。コードを確認したところ、次のコードが見つかりました。<p>var_dump($qOpenId);<br/>setcookie('qOpenId',$openid,time() + 30 * 24 * 3600,'/');<br/></p>var_dump($OpenId) 行に思い切ってコメントしたところ、テストは成功しました。 個人的には、setcookie は http ヘッダーの内容を直接設定する必要があると考えています。そのため、前にヘッダー出力、var_dump、echo などを置くことはできません。 推奨される調査: 「
PHP」ビデオチュートリアル>>
以上がphp setcookieが失敗した場合の対処方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。