
این تابع نام یک فایل را میگیرد و مشخص میکنه که آیا این یک دایرکتوری هست یا نه
به صورت زیر تعریف میشود:
is_dir ( string $filename ) : bool
نام فایل همان $filename است که بصورت رشته به تابع is_dir می دهیم.
نام فایل را میتوانیم هم بصورت آدرس نسبی و هم بصورت آدرس مطلق وارد کنیم.
خروجی این تابع یا True هست یا False
اگر فایل مورد نظر موجود باشد و هم یک دایرکتوری باشد مقدار True را بر میگرداند و
در غیر این صورت مقدار False را برمیگرداند.
<?php var_dump(is_dir("file.php")); ?>
خروجی بصورت زیر است:
bool(false)
و دلیل اینکه مقدار False را برگردوند اینه که file.php یک دایرکتوری نیست.
یه مثال دیگه:
<?php $file = "files" if(is_dir($file)) { echo "$file is a directory" } else { echo ("$file is not a directory"); } ?>
در دستورات بالا بررسی میکنیم که در صورت وجود دایرکتوری مورد نظر یک پیام چاپ کند و در غیر این صورت یک پیام دیگر، چون دایرکتوری files درکنار همین فایل موجود است پس خروجی بصورت زیر است:
files is a directory
حال میخوایم یکم هوشمندانه تر عمل کنیم و یک تابع بنویسیم که یک ورودی بگیرد و مشخص کند که ورودی یک فایل هست یا دایرکتوری(با فرض اینکه ورودی که به تابع میدهیم یا فایل است یا دایرکتوری و غیر این دو نیست).
<?php function check_is_dir($file) { $type = "File" if ((is_dir($file)) !== false ) { $type = "Directory" } return $type; } echo check_is_dir("files"); ?>
این تابع به این صورت کار میکند که میگه هر چی ورودی به من میدید file هست مگر اینکه خلافش ثابت بشه
و اینو با if که درون تابع نوشتیم بررسی میکنه.
خروجی بصورت زیر است:
Directory
و چون دایرکتوری files وجود دارد خروجی بصورت بالا است.
اینم از تابع is_dir در php
حتما سعی کنید مثال هارو خودتون بنویسید و مثال های دیگه رو هم برای خودتون حل کنید تا تسلط بیشتری روی این موضوع پیدا کنید.
میتونید از سایت خود php هم استفاده کنید.
شاد و پیروز باشید.