ホームページ >バックエンド開発 >PHPチュートリアル >PHP スコープとフォルダー操作の例

PHP スコープとフォルダー操作の例

angryTom
angryTom転載
2020-01-31 18:16:402644ブラウズ

PHP スコープとフォルダー操作の例

1. スコープ

1.1 変数スコープ

1. グローバル変数: 外部function

2. ローカル変数: 関数の内部。デフォルトでは、関数の外部の変数は関数内部ではアクセスされません。

3. スーパー グローバル変数: 関数の内部および外部に存在できます。 function Access

関数内のグローバル変数へのアクセス

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

グローバル キーワード

<?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

概要:

1.$GLOBALS はグローバル変数のすべての値を保存します

2.global はグローバル変数への参照を作成するために使用されます

3.Constant にはスコープがありません概念

1.2 静的変数 (静的)

静的変数は通常、静的ローカル変数を指します

静的変数は 1 回だけ初期化されます

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

定数と静的変数の違い:

1. 定数と静的変数は一度初期化されます

2. 定数は値を変更できませんが、静的変数は値を変更できます値

3. 定数にはスコープがなく、静的変数にはスコープがあります

1.3 匿名関数 use()

デフォルトでは、内部の関数にはアクセスできません関数は外部変数ですが、匿名関数では、

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

2 を使用して外部変数を匿名関数に導入できます。 フォルダー操作:

##2.1 フォルダーの作成(mkdir (パス、権限、再帰的に作成するかどうか))

<?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 フォルダーの削除 (rmdir())

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

注 :

1. 削除されたフォルダーは空である必要があります

2. PHP では、セキュリティ上の考慮事項により、再帰的な削除は提供されていません。

2.3 フォルダーの名前を変更します (rename(旧名, 新名))

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

2.4 フォルダーかどうか (is_dir())

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

2.5 フォルダーを開く、フォルダーを読み取る、フォルダーを閉じる

$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);        //关闭文件夹

概要:

1. opendir() はリソース タイプを返します

2. 各フォルダーには . と ..

3. iconv() は文字エンコーディングの変換に使用されます

おすすめの関連記事チュートリアル:

php Tutorial

以上がPHP スコープとフォルダー操作の例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcnblogs.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。