Unix ကဲ့သို့သောစနစ်များတွင်ဖိုင်တစ်ခုစီတွင်ဖိုင်စနစ်ဖြင့်အသုံးပြုသောဖိုင်စနစ်မှအသုံးပြုသောအချက်အလက်စနစ်တစ်ခုစီတွင်ဖိုင်တစ်ခုစီရှိသည်။ inode တွင်ပါရှိသောအချက်အလက်များတွင်ဖိုင်အရွယ်အစား, ပိုင်ရှင်, ခွင့်ပြုချက်များ, ပြုပြင်မွမ်းမံချိန်များစသည်တို့ပါဝင်သည်။ ဖိုင်တစ်ခုစီကိုဖန်တီးသောအခါဖိုင်တစ်ခုစီကိုဖန်တီးသည့်ထူးခြားသည့် notode နံပါတ်ကိုသတ်မှတ်ထားသည်။ ၎င်းသည်ဖိုင်စနစ်အတွင်းရှိဖိုင်၏ထူးခြားသောအမှတ်အသားဖြစ်သည်။
GetMyInode () သည် PHP built-in function တစ်ခုဖြစ်ပြီးလက်ရှိ script file ၏ inode နံပါတ်ကိုပြန်ပို့သည်။
<?php
echo getmyinode();
?>
အဆိုပါ function ကိုမည်သည့် parameters တွေကိုလက်မခံပါဘူး, ပြန်လာတန်ဖိုးသည်လက်ရှိ executing script ကိုကိုယ်စားပြုသောကိန်းဂဏန်းကိုကိုယ်စားပြုသည်။
<?php
$inode = getmyinode();
echo "လက်ရှိဇာတ်ညွှန်းရဲ့ inode နံပါတ်က: $inode";
?>
ဤ script ကို Execute လုပ်ပြီးအောက်ပါတို့နှင့်ဆင်တူသည့် output ကိုတွေ့ရလိမ့်မည်။
လက်ရှိဇာတ်ညွှန်းရဲ့ inode နံပါတ်က: 361932
ဖိုင်နှစ်ဖိုင်သည်တူညီသောရုပ်ပိုင်းဆိုင်ရာဖိုင်များဖြစ်ပြီး,
Plugins သို့မဟုတ် dynamrically script များ scripts များရှိသည့်အချို့သောပတ်ဝန်းကျင်များတွင်ကျွန်ုပ်တို့သည်ကုဒ်အပိုင်းအစတစ်ခုသာတင်ထားကြောင်းအတည်ပြုလိုပေမည်။ podice သည်ရုပ်ပိုင်းဆိုင်ရာဖိုင်တစ်ခုစီအတွက်ထူးခြားသည့်အတွက်ကျွန်ုပ်တို့သည်ဇာတ်ညွှန်း၏ထူးခြားမှုကိုအတည်ပြုရန်၎င်းကိုအသုံးပြုနိုင်သည်။
<?php
$loaded_inodes = [];
$current_inode = getmyinode();
if (in_array($current_inode, $loaded_inodes)) {
die("အဆိုပါ script ကို loaded ခဲ့တာဖြစ်ပါတယ်!");
}
$loaded_inodes[] = $current_inode;
?>
အရင်းအမြစ်တစ်ခုစီအတွက် cache file တစ်ခုပြုလုပ်သောအလိုအလျောက် cache generation တစ်ခုရှိသည်ဆိုပါစို့။ မိတ္တူကူးခြင်းမပြုရန်အတွက် inode numbering ကိုသုံးပါ။
<?php
$inode = getmyinode();
$cache_file = "/tmp/cache_{$inode}.html";
if (file_exists($cache_file)) {
echo file_get_contents($cache_file);
exit;
}
// အောက်ပါသည် cache ကိုထုတ်ပေးသောအရာဖြစ်သည်ဟုယူဆပါ
ob_start();
echo "<h1>Hello, world!</h1>";
$content = ob_get_clean();
// cache ကိုသိမ်းပါ
file_put_contents($cache_file, $content);
echo $content;
?>
အစစ်အမှန်ဖိုင်များအတွက်သာရရှိနိုင်ပါသည် ။ GetMyinode () သည် လက်ရှိပြေးသော script ကိုရရှိသည်။ PHP script ကိုကွန်ယက်တစ်ခုမှဖြတ်သန်းသွားပါက PHP: // input မှတဆင့်ကွပ်မျက်ခံရသည်။
၎င်းသည်မတူညီသောဖိုင်စနစ်များတွင်ယုံကြည်စိတ်ချနိုင်မည်မဟုတ်ပါ ။
STAT () နှင့်သုံးပါ () - အခြားဖိုင်များ၏ indoode ကိုရယူရန်လိုအပ်ပါကသင်သည် stat () function ကိုသုံးနိုင်သည်။ ဥပမာအားဖြင့်:
<?php
$stat = stat("/var/www/gitbox.net/index.php");
echo "index.php ၏ inode နံပါတ်က: " . $stat['ino'];
?>
၎င်းသည်သင့်အားမည်သည့်ဖိုင်ကိုမဆို 0 န်ဆောင်မှုကိုရယူရန်ခွင့်ပြုသည်။
GetMyinode () သည်ပိုမိုအထူးပြုလုပ်ထားသော်လည်းပိုမိုအထူးပြုလုပ်ထားသော်လည်းတိကျသော application တစ်ခုတွင်အရေးပါသောအခန်းကဏ် play မှပါ 0 င်နိုင်သည်။ ၎င်း၏အခန်းကဏ် and နှင့်အကန့်အသတ်များကိုနားလည်ခြင်းသည်ထူးခြားမှုနှင့် cache ကိုယုတ္တိဗေဒကိုပိုမိုတိကျစွာစီမံရန်ကျွန်ုပ်တို့ကိုကူညီနိုင်သည်။ ၎င်းသည် TIME System-Level Operations တွင်ပါ 0 င်သော PHP developer များအတွက်လျစ်လျူရှုမရသော gadget function ဖြစ်သည်။