您好,登錄后才能下訂單哦!
1.作用域
1.1變量作用域
1.全局變量:在函數外面
2.局部變量:在函數里面,默認情況下,函數內部是不會訪問函數外部的變量
3.超全局變量:可以在函數內部和函數外部訪問
在函數內部訪問全局變量
<?php $num=10; //全局變量 function fun() { echo $GLOBALS['num']; //輸出全局的$num } fun();
global關鍵字
<?php $num=10; function fun() { global $num; //將全局變量的$num的地址引入到函數內部 相當于$num=&GLOBALS['num'] echo $num; //10 $num=100; } fun(); echo '<br>'; echo $num; //100
小結:
1.$GLOBALS保存的是全局變量的所有的值
2.global用于創建一個全局變量的引用
3.常量是沒有作用域的概念
1.2靜態變量(static)
靜態變量一般指的是靜態局部變量
靜態變量只初始化一次
<?php function fun() { static $num=10; //靜態變量只初始化一次,調用完畢吧不銷毀,第二次調用的時候就不再初始化 $num++; echo $num,'<br>'; } fun(); //11 fun(); //12
常量和靜態變量的區別:
1.常量和靜態變量都是初始化一次
2.常量不能改變值,靜態變量可以改變值
3.常量沒有作用域,靜態變量有作用域
1.3匿名函數use()
默認情況下,函數內部不能訪問函數外部的變量,但在匿名函數中,可以通過use將外部變量引入匿名函數中
<?php $num=10; $fun=function() use($num) { //將$num引入到匿名函數中,引用多個變量時用逗號分隔開 echo $num; }; $fun(); //10
2.文件夾操作:
2.1創建文件夾(mkdir(路徑,權限,是否遞歸創建))
<?php //1、創建目錄 //mkdir('./aa'); //創建aa文件夾 //mkdir('./aa/bb'); //在aa目錄下創建bb(aa目錄必須存在) mkdir('./aa/bb/cc/dd',0777,true); //遞歸創建
2.2刪除文件夾(rmdir())
//remove:移除 rmdir('./aa/bb/cc/dd'); //刪除dd文件夾
注意:
1、刪除的文件夾必須是空的
2、PHP基于安全考慮,沒有提供遞歸刪除。
2.3重命名文件夾(rename(舊名字,新姓名))
rename('./aa','./aaa'); //將aa改為aaa
2.4是否是文件夾(is_dir())
echo is_dir('./aaa')?' 是文件夾':'不是文件夾';
2.5打開文件夾、讀取文件夾、關閉文件夾
$folder=opendir('./'); //打開目錄 //var_dump($folder); //resource(3) of type (stream) while($f=readdir($folder)){ //讀取文件夾 if($f=='.' || $f=='..') continue; echo iconv('gbk','utf-8',$f),'<br>'; //將gbk轉成utf-8 } closedir($folder); //關閉文件夾
小結:
1、opendir()返回資源類型
2、每個文件夾中都有.和..
3、iconv()用來做字符編碼轉換
以上就是PHP作用域和文件夾操作示例的詳細內容,更多請關注億速云其它相關文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。