亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

檢測文件屬性函數(shù)

我們來舉一個國內(nèi)非常出名的軟件,discuz的安裝過程截圖給大家看看:
?? ? ? ?QQ截圖20161009105100.png ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

上面的例子,就是典型的文件檢測的用法。

我們來學(xué)習(xí)一下下面的一批函數(shù)。然后,我們來通過一個例子進行學(xué)習(xí)。

bool file_exists ( $指定文件名或者文件路徑)
功能:文件是否存在。

bool is_readable ( $指定文件名或者文件路徑)
功能:文件是否可讀

bool is_writeable ( $指定文件名或者文件路徑)
功能:文件是否可寫

bool is_executable ( $指定文件名或者文件路徑)
功能:文件是否可執(zhí)行

bool is_file ( $指定文件名或者文件路徑)
功能:是否是文件

bool is_dir ( $指定文件名或者文件路徑)
功能:是否是目錄

void clearstatcache ( void )
功能:清楚文件的狀態(tài)緩存

上面的功能一看就清楚了。那實驗,我們就來寫這個最開始我們舉的這個例子。

我們來講第一個例子,文件鎖。如果已經(jīng)安裝了,存在安裝鎖就提示已安裝,否則就繼續(xù)安裝。

我們假設(shè)安裝界面的網(wǎng)址是:install.php,安裝的鎖文件是install.lock。我們就可以檢測install.lock文件是否存在。

<?php
 if(file_exists('install.lock')){
     echo '已安裝,請不要再次進行安裝';
    exit;
 
}
?>

我們接下來做一個文件安裝檢測的實驗來檢測文件或目錄是否有寫入或者讀取權(quán)限。如果沒有則不能進行安裝。

處理這件事情的思路如下:

1.???? 定義一批需要檢測權(quán)限的數(shù)組

2.???? 可以檢測是文件夾還是文件

3.???? 做一個標(biāo)置位變量,如果標(biāo)置位變量一旦為false則不顯示下一步的安裝

<?php
 
//可以定義一批文件是否存在
$files = [
    'config.php',
    'img/',
    'uploads/',
];
 
//定義標(biāo)志位變量
$flag = true;
foreach($files as  $v){
    echo $v;
 
    //判斷是文件還是文件夾
 
    if(is_file($v)){
        echo '是一個文件&nbsp;&nbsp;&nbsp;&nbsp;';
    }else if(is_dir($v)){
        echo '是一個文件夾&nbsp;&nbsp;&nbsp;&nbsp;';
    }
 
    if(is_readable($v)){
        echo ' 可讀';
    }else{
         echo '<font color="red">不可讀</font>';
    }
 
    if(is_writeable($v)){
        echo '可寫';
    }else{
        echo '<font color="red">不可寫</font>';
    }
 
    echo '<br />';
}
 
if($flag){
    echo '<a href="step1">下一步</a>';
 
}else{
     echo '不能進行安裝';
}
?>

通過上面的例子,我們就做到了。實現(xiàn)PHP某個軟件安裝過程當(dāng)中的安裝檢測。

也就是我們上面思路的實現(xiàn)。


繼續(xù)學(xué)習(xí)
||
<?php //可以定義一批文件是否存在 $files = [ 'config.php', 'img/', 'uploads/', ]; //定義標(biāo)志位變量 $flag = true; foreach($files as $v){ echo $v; //判斷是文件還是文件夾 if(is_file($v)){ echo '是一個文件    '; }else if(is_dir($v)){ echo '是一個文件夾    '; } if(is_readable($v)){ echo ' 可讀'; }else{ echo '<font color="red">不可讀</font>'; } if(is_writeable($v)){ echo '可寫'; }else{ echo '<font color="red">不可寫</font>'; } echo '<br />'; } if($flag){ echo '<a href="step1">下一步</a>'; }else{ echo '不能進行安裝'; } ?>
提交重置代碼