تابع is_dir ‌در php


این تابع نام یک فایل را میگیرد و مشخص میکنه که آیا این یک دایرکتوری هست یا نه

به صورت زیر تعریف میشود:

is_dir ( string $filename ) : bool

پارامترها :

نام فایل همان $filename است که بصورت رشته به تابع is_dir می دهیم.

نام فایل را میتوانیم هم بصورت آدرس نسبی و هم بصورت آدرس مطلق وارد کنیم.

خروجی :

خروجی این تابع یا True هست یا False

اگر فایل مورد نظر موجود باشد و هم یک دایرکتوری باشد مقدار True را بر میگرداند و

در غیر این صورت مقدار False را برمیگرداند.

مثال :

<?php
    var_dump(is_dir(&quotfile.php&quot));
?>

خروجی بصورت زیر است:

bool(false)

و دلیل اینکه مقدار False را برگردوند اینه که file.php یک دایرکتوری نیست.

یه مثال دیگه:

<?php
    $file = &quotfiles&quot
    if(is_dir($file)) {
        echo &quot$file is a directory&quot
    } else {
        echo (&quot$file is not a directory&quot);
    }
?>

در دستورات بالا بررسی میکنیم که در صورت وجود دایرکتوری مورد نظر یک پیام چاپ کند و در غیر این صورت یک پیام دیگر، چون دایرکتوری files درکنار همین فایل موجود است پس خروجی بصورت زیر است:

files is a directory

حال میخوایم یکم هوشمندانه تر عمل کنیم و یک تابع بنویسیم که یک ورودی بگیرد و مشخص کند که ورودی یک فایل هست یا دایرکتوری(با فرض اینکه ورودی که به تابع میدهیم یا فایل است یا دایرکتوری و غیر این دو نیست).

<?php
    function check_is_dir($file) {
        $type = &quotFile&quot
        if ((is_dir($file)) !== false ) {
            $type = &quotDirectory&quot
        }
        return $type;
    }

    echo check_is_dir(&quotfiles&quot);

?>

این تابع به این صورت کار میکند که میگه هر چی ورودی به من میدید file هست مگر اینکه خلافش ثابت بشه

و اینو با if که درون تابع نوشتیم بررسی میکنه.

خروجی بصورت زیر است:

Directory

و چون دایرکتوری files وجود دارد خروجی بصورت بالا است.

اینم از تابع is_dir در php

حتما سعی کنید مثال هارو خودتون بنویسید و مثال های دیگه رو هم برای خودتون حل کنید تا تسلط بیشتری روی این موضوع پیدا کنید.

میتونید از سایت خود php هم استفاده کنید.

شاد و پیروز باشید.