Cannot modify header information错误解决方法_PHP
ob_start();
setcookie("username","宋岩宾",time()+3600);
echo "the username is:".$HTTP_COOKIE_VARS["username"]."\n";
echo "the username is:".$_COOKIE["username"]."\n";
print_r($_COOKIE);
?>
Warning: Cannot modify header information - headers already sent by出错的原因
我在php程序的头部加了,
header("cache-control:no-cache,must-revalidate");
之后页面就出现上面的错误,看了N个资料也没有结果。今天偶尔发现原来是我的php.ini里面的配置出了问题,在C:\windows\下找到php.ini文件
output_buffering默认为off的。我现在把它设为4096就OK了。
用于解决显示提示错误,不能按(日期+导出文件数)为文件名的错误信息.
setcookie函数必須在任何資料輸出至浏览器前,就先送出
基於上面這些限制,所以執行setcookie()函數時,常會碰到"Undefined index"、"Cannot modify header information - headers already sent by"…等問題,解決"Cannot modify header information - headers already sent by"這個錯誤的方法是在產生cookie前,先延緩資料輸出至瀏覽器,因此,您可以在程式的最前方加上ob_start();這個函數。
ob_start()函数用于打开缓冲区,比如header()函数之前如果就有输出,包括回车\空格\换行\都会有"Header had all ready send by"的错误,这时可以先用ob_start()打开缓冲区PHP代码的数据块和echo()输出都会进入缓冲区而不会立刻输出.当然打开缓冲区的作用很多,只要发挥你的想象.可以总结以下四点:
1.用于header()之前
ob_start(); //打开缓冲区
echo \"Hellon\"; //输出
header("location:index.php"); //把浏览器重定向到index.php
ob_end_flush();//输出全部内容到浏览器
?>
2.phpinfo()函数可获取客户端和服务器端的信息,但要保存客户端信息用缓冲区的方法是最好的选择.
ob_start(); //打开缓冲区
phpinfo(); //使用phpinfo函数
$info=ob_get_contents(); //得到缓冲区的内容并且赋值给$info
$file=fopen(\'info.txt\',\'w\'); //打开文件info.txt
fwrite($file,$info); //写入信息到info.txt
fclose($file); //关闭文件info.txt
?>
3.静态页面技术
ob_start();//打开缓冲区
?>
php页面的全部输出
$content = ob_get_contents();//取得php页面输出的全部内容
$fp = fopen("output00001.html", "w"); //创建一个文件,并打开,准备写入
fwrite($fp, $content); //把php页面的内容全部写入output00001.html,然后……
fclose($fp);
?>
4.输出代码
Function run_code($code) {
If($code) {
ob_start();
eval($code);
$contents = ob_get_contents();
ob_end_clean();
}else {
echo "错误!没有输出";
exit();
}
return $contents;
}

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

[SpringBoot] Passage des paramètres dans l'en-tête via les appels Feign Comment transmettre les paramètres de l'en-tête via Feign Description du problème Lorsque nous utilisons Feign pour demander l'interface API d'un autre service dans Spring Cloud, il est nécessaire de transmettre les paramètres dans l'en-tête. un traitement spécial est effectué, les paramètres de l'en-tête seront perdus. Solution 1 : transmettez-le via @RequestHeader(name="headerName") Par exemple : Feign est défini comme suit @FeignClient(name="service-name")pub.

L'en-tête de Linux fait référence au début d'un fichier ou d'un flux de données, qui est utilisé pour contenir des métadonnées sur le contenu. En écrivant et en utilisant correctement le fichier d'en-tête, les développeurs peuvent mieux utiliser les ressources du système et améliorer la lisibilité et la lisibilité du code. Maintenabilité.

PHP est un langage de programmation puissant qui peut être utilisé pour créer des sites Web et des applications Web dynamiques. L’une des fonctionnalités les plus puissantes est la méthode header() de PHP. Dans cet article, nous explorerons comment utiliser la méthode header() de PHP pour ajuster les pages Web.

Comment implémenter le saut dans l'en-tête php : 1. Utilisez la syntaxe "Header("Location:$url");" pour implémenter le saut ; 2. Utilisez le jugement if pour implémenter le saut, avec des instructions de saut telles que "if($_COOKIE[" u_type "]){ header('location:register.php'); } else{ setcookie('u_type','1','86400*360');".

Différences : 1. La balise head est utilisée pour définir l'en-tête du document, qui est un conteneur pour tous les éléments head, et la balise header est utilisée pour définir l'en-tête (informations d'introduction) du document 2. Tous les navigateurs prennent en charge le ; balise head et anciennes versions des navigateurs Aucun des navigateurs ne prend en charge la balise d'en-tête et les navigateurs tels que IE9+ et versions ultérieures doivent prendre en charge la balise d'en-tête.

À l'ère actuelle du développement Web, une gestion efficace et efficiente des tables est devenue très importante, en particulier lorsqu'il s'agit d'applications Web gourmandes en données. La possibilité d'ajouter, de modifier et de supprimer dynamiquement des lignes d'un tableau peut améliorer considérablement l'expérience utilisateur et rendre les applications plus interactives. Un moyen efficace d’y parvenir consiste à exploiter la puissance de jQuery. jQuery fournit de nombreuses fonctionnalités pour aider les développeurs à effectuer des opérations. Lignes de tableau Une ligne de tableau est une collection de données interdépendantes, représentées par des éléments en HTML. Il permet de regrouper des cellules (représentées par des éléments) dans un tableau. Chaque élément est utilisé pour définir une ligne dans le tableau, et pour les tableaux multi-attributs, il contient généralement un ou plusieurs éléments. Syntaxe$(sélecteur).append(co

Liste complète des fonctions de téléchargement de fichiers PHP : exemple de téléchargement de fichiers, analyse du fichier de lecture, de l'en-tête, de la disposition du contenu et d'autres fonctions. Le téléchargement de fichiers est l'une des fonctions essentielles des applications Web, et PHP, en tant que langage de développement Web largement utilisé, en fournit de nombreuses. fonction et procédé pour mettre en œuvre le téléchargement de fichiers. Cet article présentera les fonctions de téléchargement de fichiers couramment utilisées en PHP, notamment readfile, header, Content-Dispo.

Nginx peut distribuer des requêtes à différents serveurs en fonction d'identifiants personnalisés dans les en-têtes de requête. Plus précisément, vous pouvez utiliser la directive map pour mapper l'identifiant personnalisé dans l'en-tête de la demande à une adresse de serveur back-end différente, puis utiliser la directive proxy_pass pour transmettre la demande au serveur back-end correspondant. Voici un exemple de fichier de configuration : http{map$http_my_header$backend{defaultbackend1.example.com;value1backend2.example.com;value2backend3.example.com;}upstreambackend1{serv
