Maison  >  Article  >  développement back-end  >  Exemples de portée PHP et de manipulation de dossiers

Exemples de portée PHP et de manipulation de dossiers

angryTom
angryTomavant
2020-01-31 18:16:402606parcourir

Exemples de portée PHP et de manipulation de dossiers

1. Portée

1.1 Portée des variables

1. fonction

2. Variables locales : À l'intérieur de la fonction, par défaut, les variables extérieures à la fonction ne seront pas accessibles à l'intérieur de la fonction

3. Variables superglobales : Peuvent être utilisées à la fois à l'intérieur et à l'extérieur de la fonction Accès

Accès aux variables globales à l'intérieur de la fonction

<?php
$num=10;  //全局变量
function fun() {
    echo $GLOBALS[&#39;num&#39;];    //输出全局的$num
}
fun();

mot-clé global

<?php
$num=10;
function fun() {
    global $num;   //将全局变量的$num的地址引入到函数内部  相当于$num=&GLOBALS[&#39;num&#39;]
    echo $num;    //10
    $num=100;
}
fun();
echo &#39;<br>&#39;;
echo $num;    //100

Résumé :

1.$GLOBALS enregistre toutes les valeurs des variables globales

2.global est utilisé pour créer une référence aux variables globales

3 Les constantes n'ont pas de portée Concept<.>

1.2 Variables statiques (statiques)

Les variables statiques font généralement référence à des variables locales statiques

Les variables statiques ne sont initialisées qu'une seule fois

<?php
function fun() {
    static $num=10;    //静态变量只初始化一次,调用完毕吧不销毁,第二次调用的时候就不再初始化
    $num++;
    echo $num,&#39;<br>&#39;;
}
fun();    //11
fun();    //12

La différence entre les constantes et les variables statiques :

1. Les constantes et les variables statiques sont initialisées une fois

2 Les constantes ne peuvent pas changer de valeur, les variables statiques peuvent changer de valeur

.

3. Les constantes n'ont pas de portée, les variables statiques ont une portée

1.3 Utilisation de fonctions anonymes()

Par défaut, les fonctions ne sont pas accessibles à l'intérieur de la fonction Variables externes , mais dans les fonctions anonymes, des variables externes peuvent être introduites dans la fonction anonyme en utilisant

<?php
$num=10;
$fun=function() use($num) {  //将$num引入到匿名函数中,引用多个变量时用逗号分隔开
    echo $num;     
};
$fun();   //10

2 Opération de dossier :

2.1 Dossier de création (mkdir (. chemin, autorisation, création récursive))

<?php
//1、创建目录
//mkdir(&#39;./aa&#39;);    //创建aa文件夹
//mkdir(&#39;./aa/bb&#39;);    //在aa目录下创建bb(aa目录必须存在)
mkdir(&#39;./aa/bb/cc/dd&#39;,0777,true);    //递归创建

2.2 Supprimer le dossier (rmdir())

//remove:移除
rmdir(&#39;./aa/bb/cc/dd&#39;);    //删除dd文件夹

Remarque :

1. Le dossier supprimé doit être vide

2 PHP ne propose pas de suppression récursive pour des raisons de sécurité.

2.3 Renommer le dossier (renommer(ancien nom, nouveau nom))

rename(&#39;./aa&#39;,&#39;./aaa&#39;);    //将aa改为aaa

2.4 Est-ce un dossier (is_dir())

echo is_dir(&#39;./aaa&#39;)?&#39;  是文件夹&#39;:&#39;不是文件夹&#39;;

2.5 Ouvrir le dossier, lire le dossier, fermer le dossier

$folder=opendir(&#39;./&#39;);    //打开目录
//var_dump($folder);        //resource(3) of type (stream) 
while($f=readdir($folder)){    //读取文件夹
    if($f==&#39;.&#39; || $f==&#39;..&#39;)
        continue;
    echo iconv(&#39;gbk&#39;,&#39;utf-8&#39;,$f),&#39;<br>&#39;;  //将gbk转成utf-8
}
closedir($folder);        //关闭文件夹

Résumé :

1 opendir() renvoie le type de ressource

2. Chaque dossier contient . et ..

3. iconv() est utilisé pour convertir les encodages de caractères

Tutoriels d'articles associés recommandés :

Tutoriel php

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer