Table des matières
令PHP初学者的困惑的10个知识点
【8】isset()和empty()的区别
【9】mysql查询语句包含有关键字
【10】通过HTTP协议一次上传多个文件的方法
Maison développement back-end tutoriel php 令PHP初学者的困惑的10个知识点

令PHP初学者的困惑的10个知识点

Jun 20, 2016 pm 01:03 PM
php技巧

令PHP初学者的困惑的10个知识点

【1】页面之间无法传递变量 get,post,session

在最新的php版本中自动全局变量是关闭的,所以要从上一页面取得提交过来得变量要使用$_GET['foo'],$_POST['foo'],$_SESSION['foo']来得到。当然也可以修改自动全局变量为开(php.ini改为register_globals = On);考虑到兼容性,还是强迫自己熟悉新的写法比较好。

注:PHP中的超全局变量
从PHP 4.2.0 开始,register_globals 的默认值为 off,这样一来,以前的很多可以直接使用的变量,如 $PHP_SELF 或者你设定的SESSION变量都不能用 “$变量名”的形式访问了,这可能会给你带来很多不变,但却有助于安全性的提高。访问这些变量,你需要使用PHP 超全局变量,如下:

 

$_SERVER
变量由 Web 服务器设定或者直接与当前脚本的执行环境相关联。类似于旧数组 $HTTP_SERVER_VARS 数组。以前的$PHP_SELF对应$_SERVER['PHP_SELF'],你可以使用phpinfo来查看你的$_SERVER变量。

$_GET
经由 HTTP GET 方法提交至脚本的变量。类似于旧数组 $HTTP_GET_VARS 数组。

$_POST
经由 HTTP POST 方法提交至脚本的变量。类似于旧数组 $HTTP_POST_VARS 数组。

$_COOKIE
经由 HTTP Cookies 方法提交至脚本的变量。类似于旧数组 $HTTP_COOKIE_VARS 数组。

$_SESSION
当前注册给脚本会话的变量。类似于旧数组 $HTTP_SESSION_VARS 数组。

$_FILES
经由 HTTP POST 文件上传而提交至脚本的变量。类似于旧数组 $HTTP_POST_FILES 数组。

$_ENV
执行环境提交至脚本的变量。类似于旧数组 $HTTP_ENV_VARS 数组。
对于$_FILES变量:(文件域字段为“myfile”)

$_FILES['myfile']['name']
客户端机器文件的原名称(包括路径)。

$_FILES['myfile']['type']
文件的 MIME 类型,需要浏览器提供该信息的支持,例如“image/gif”。

$_FILES['myfile']['size']
已上传文件的大小,单位为字节。

$_FILES['myfile']['tmp_name']
文件被上传后在服务端储存的临时文件名(包括路径)。

$_FILES['myfile']['error']
和该文件上传相关的错误代码。['error'] 是在 PHP 4.2.0 版本中增加的。

当 php.ini 中的 register_globals 被设置为 on 时,$myfile_name 等价于 $_FILES['myfile']['name'],$myfile_type 等价于 $_FILES['myfile']['type']等。


【2】win32下的session不能正常工作


php.ini默认的session.save_path = /tmp
这显然是linux下的配置,win32下php无法读写session文件导致session无法使用,把它改成一个绝对路径就可以了,例如session.save_path = c:\windows\temp。

【3】显示错误信息


当php.ini的display_errors = On并且error_reporting = E_ALL时,将显示所有的错误和提示,调试的时候最好打开以便纠错,如果你用以前php写法错误信息多半是关于未定义变量的。变量在赋值以前调用会有提示,解决办法是探测或者屏蔽,例如显示$foo,可以if(isset($foo)) echo $foo 或者echo @$foo

【4】header already sent


这个错误通常会在你使用HEADER的时候出现,他可能是几种原因:1,你在使用HEADER前PRING或者ECHO了2.你当前文件前面有空行3.你可能INCLUDE了一个文件,该文件尾部有空行或者输出也会出现这种错误。

【5】更改php.ini后没有变化


重新启动web server,比如IIS,Apache等等,然后才会应用最新的设置。

【6】有时候sql语句不起作用

对数据库操作失败。最简便的调试方法,echo那句sql,看看变量的值是否能得到。

【7】include和require的区别


两者没有太大的区别,如果要包含的文件不存在,include提示notice,然后继续执行下面的语句,require提示致命错误并且退出。根据测试,win32平台下它们都是先包含后执行,所以被包含文件里最好不要再有include或require语句,这样会造成目录混乱。或许*nux下情况不同,暂时还没测试。如果一个文件不想被包含多次可以使用include_once或require_once## 读取,写入文档数据:
 

function r($file_name) {
$filenum=@fopen($file_name,"r");
@flock($filenum,LOCK_SH);
$file_data=@fread($filenum,filesize($file_name));
@fclose($filenum);
return $file_data;
}
function w($file_name,$data,$method="w"){
$filenum=@fopen($file_name,$method);
flock($filenum,LOCK_EX);
$file_data=fwrite($filenum,$data);
fclose($filenum);
return $file_data;
}
Copier après la connexion

【8】isset()和empty()的区别


两者都是测试变量用的,但是isset()是测试变量是否被赋值,而empty()是测试一个已经被赋值的变量是否为空。如果一个变量没被赋值就引用在php里是被允许的,但会有notice提示。如果一个变量被赋空值,$foo=""或者$foo=0或者 $foo=false,那么empty($foo)返回真,isset($foo)也返回真,就是说赋空值不会注销一个变量。要注销一个变量,可以用 unset($foo)或者$foo=NULL。

【9】mysql查询语句包含有关键字


php查询mysql的时候,有时候mysql表名或者列名会有关键字,这时候查询会有错误。例如表名是order,查询时候会出错,简单的办法是sql语句里表名或者列名加上`[tab键上面]来加以区别,例如select * from `order`。

【10】通过HTTP协议一次上传多个文件的方法


有两个思路,是同一个方法的两种实现。具体程序还需自己去设计
1. 在form中设置多个文件输入框,用数组命名他们的名字,如下:

< form action="" method="post" >
< input name="usefile[]" type="file" >
< input name="usefile[]" type="file" >
< input name="usefile[]" type="file" >
< /form >
Copier après la connexion


这样,在服务器端做以下测试

echo " < pre > ";
print_r($_FILES);
echo " < /pre > ";
Copier après la connexion
Copier après la connexion

2. 在form中设置多个文件输入框,但名字不同,如下:

< form action="" method="post" >
< input name="usefile_a" type="file" >
< input name="usefile_b" type="file" >
< input name="usefile_c" type="file" >
< /form >
Copier après la connexion


在服务器端做同样测试:

echo " < pre > ";
print_r($_FILES);
echo " < /pre > ";
Copier après la connexion
Copier après la connexion

 


Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

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

Explication détaillée des techniques de téléchargement et de téléchargement de fichiers en PHP Explication détaillée des techniques de téléchargement et de téléchargement de fichiers en PHP Jun 25, 2023 pm 05:57 PM

PHP est un langage de programmation côté serveur très populaire et largement utilisé dans le développement de sites Web. Parmi eux, le téléchargement et le téléchargement de fichiers sont l'une des fonctions couramment utilisées des sites Web, et PHP fournit une multitude de fonctions et de techniques pour mettre en œuvre ces fonctions. Dans cet article, nous présenterons en détail les techniques de chargement et de téléchargement de fichiers en PHP afin que vous puissiez développer votre site Web plus efficacement. Téléchargement de fichiers Le téléchargement de fichiers fait référence à l'envoi de fichiers depuis l'ordinateur local vers un serveur distant. Après avoir téléchargé les fichiers, nous pouvons stocker, traiter et afficher ces fichiers. En PHP

Compétences d'appel de l'interface API PHP Kuaishou : comment gérer les informations d'erreur renvoyées par l'interface Compétences d'appel de l'interface API PHP Kuaishou : comment gérer les informations d'erreur renvoyées par l'interface Jul 20, 2023 pm 11:22 PM

Conseils d'appel de l'interface API PHP Kuaishou : Comment gérer les informations d'erreur renvoyées par l'interface Lorsque vous utilisez PHP pour appeler l'interface API Kuaishou, nous rencontrons souvent des situations où l'interface renvoie des erreurs. Pour les informations d'erreur renvoyées par l'interface de traitement, nous devons fournir un traitement et un retour appropriés pour améliorer la stabilité et l'expérience utilisateur de l'application. Cet article présentera quelques techniques de gestion des informations d'erreur renvoyées par les interfaces et fournira des exemples de code correspondants. Utilisez try-catch pour intercepter les exceptions Lors de l'appel de l'interface API, certaines erreurs d'exception peuvent se produire.

Explication détaillée de la méthode d'application de la technologie de pagination en PHP dans le cadre Explication détaillée de la méthode d'application de la technologie de pagination en PHP dans le cadre Jun 09, 2023 am 11:40 AM

Avec le développement rapide d'Internet, de plus en plus de sites Web doivent mettre en œuvre des fonctions de pagination de données pour améliorer l'expérience de navigation des utilisateurs. Dans le développement Web, PHP est l'un des langages de programmation côté serveur les plus populaires, et la fonction de pagination de données est une technologie indispensable dans le développement PHP. Cet article présentera la méthode d'application de la technologie de pagination en PHP dans le cadre et comparera les avantages et les inconvénients des différentes solutions de pagination. 1. Méthode de pagination PHP traditionnelle Dans le développement PHP traditionnel, l'implémentation de la fonction de pagination de données nécessite d'écrire beaucoup de code, et cela doit être répété dans chaque page.

En savoir plus sur le remplacement des nouvelles lignes en PHP En savoir plus sur le remplacement des nouvelles lignes en PHP Mar 20, 2024 pm 06:42 PM

Le remplacement des nouvelles lignes en PHP est un problème souvent rencontré dans le développement réel, notamment lors du traitement de données texte. Le caractère de nouvelle ligne peut être exprimé différemment selon les systèmes d'exploitation. Il s'agit généralement de "" sur les systèmes Windows et de "" sur les systèmes Linux. Par conséquent, nous devons traiter uniformément les sauts de ligne pour garantir que les données texte sont dans un format normal. Cet article approfondira la technique de remplacement des nouvelles lignes en PHP et fournira des exemples de code spécifiques. 1. Utilisez les fonctions intégrées de PHP pour traiter les nouvelles lignes. PHP fournit certaines fonctions intégrées.

Conseils de programmation PHP : comment gérer la mise à l'échelle des images Conseils de programmation PHP : comment gérer la mise à l'échelle des images Aug 19, 2023 am 10:36 AM

Compétences en programmation PHP : comment gérer la mise à l'échelle des images Dans la conception Web moderne, les images font partie intégrante et la mise à l'échelle des images est l'une des opérations courantes. Qu'il s'agisse d'afficher une collection d'images ou de répondre aux besoins d'appareils de différentes tailles, la mise à l'échelle des images joue un rôle important. Cet article expliquera comment utiliser le langage de programmation PHP pour gérer la mise à l'échelle des images et joindra des exemples de code pour référence. 1. Utilisez la bibliothèque GD pour la mise à l'échelle des images La bibliothèque GD est une puissante bibliothèque de traitement d'images en PHP. Nous pouvons l'utiliser pour implémenter la fonction de mise à l'échelle des images. Tout d'abord, assurez-vous

Conseils de programmation PHP : Comment localiser rapidement les nombres manquants dans un tableau Conseils de programmation PHP : Comment localiser rapidement les nombres manquants dans un tableau Mar 01, 2024 pm 04:27 PM

Conseils de programmation PHP : Comment localiser rapidement les nombres manquants dans un tableau En programmation, vous rencontrez souvent des situations où vous devez vérifier si certains nombres sont manquants dans un tableau. À l’heure actuelle, nous avons besoin d’un moyen rapide et efficace de localiser les nombres manquants dans le tableau afin qu’ils puissent être traités en temps opportun. Cet article présentera une technique de programmation basée sur PHP, en utilisant des exemples de code spécifiques pour montrer comment localiser rapidement les nombres manquants dans un tableau. 1. Méthode 1 : utiliser une boucle pour parcourir le tableau. Tout d’abord, nous pouvons vérifier les nombres manquants dans le tableau en parcourant le tableau. Étapes spécifiques

Analyse des compétences de traitement PHP à haute concurrence Analyse des compétences de traitement PHP à haute concurrence Aug 10, 2023 pm 06:53 PM

Analyse des compétences de traitement PHP à haute concurrence Avec le développement d'Internet, les exigences en matière de visites simultanées sur les sites Web sont de plus en plus élevées. En tant que langage de programmation pour le développement de sites Web, PHP nécessite des compétences de traitement particulières pour améliorer les performances et la stabilité face à une forte pression d'accès simultané. Cet article présentera quelques techniques de traitement PHP à haute concurrence et fournira des exemples de code. Utiliser PHP-FPMPHP-FPM (FastCGIProcessManager) est un gestionnaire de processus officiellement fourni par PHP, qui peut efficacement

Maîtriser 50 compétences en implémentation de fonctions et partage d'expérience en développement PHP Maîtriser 50 compétences en implémentation de fonctions et partage d'expérience en développement PHP Nov 22, 2023 pm 04:51 PM

Maîtrisez 50 compétences en matière d'implémentation de fonctions et partage d'expériences dans le développement PHP. En tant que développeur PHP, nous recherchons toujours une implémentation de code efficace et de haute qualité. Afin d'améliorer l'efficacité du développement et la qualité du code, nous devons accumuler une certaine expérience et des compétences pour faire face à divers besoins et défis de développement complexes. Dans cet article, je partagerai 50 conseils et expériences de développement PHP pour implémenter diverses fonctions, dans l'espoir d'être utile à chacun dans son parcours de développement PHP. Utiliser un framework approprié : Choisir et se familiariser avec un framework PHP qui vous convient peut améliorer l'efficacité du développement et

See all articles