PHP, Get_includude_Path () နှင့် set_include_path () နှင့် set_include_path () သည်အလွန်အသုံး 0 င်သောလုပ်ဆောင်ချက်နှစ်ခုဖြစ်ပြီး, သို့သော်အချို့သောကိစ္စရပ်များတွင် developer များအနေဖြင့် Set_includude_Path () ကိုအောင်မြင်စွာထည့်သွင်းရန် PHP ကိုလုံးဝလျစ်လျူရှုထားသည့်အတိုင်းပင်၎င်းကိုအသိအမှတ်မပြုသေးသော PhP ကိုမမှတ်မိသေးသော PhP ကိုမမှတ်မိသေးသောပြ the နာကိုတွေ့ရလိမ့်မည်။ ဤဆောင်းပါးသည်ဤပြ problem နာ၏ဖြစ်နိုင်ချေအကြောင်းရင်းများကိုခွဲခြမ်းစိတ်ဖြာပြီးသက်ဆိုင်ရာဖြေရှင်းနည်းများကိုပေးလိမ့်မည်။
ပထမဆုံးစစ်ဆေးရန်လိုအပ်သည့်အချက်မှာ PHP configuration file တစ်ခုမှာ PHP configuration file တစ်ခုဖြစ်ပြီး Continit_path ကို ထည့်သွင်းရန်အတင်းအကျပ်ခိုင်းစေခြင်းဖြစ်ပြီး Safe_Mode သို့မဟုတ် Open_basedir ကဲ့သို့သောလုံခြုံရေးရွေးချယ်စရာများကန့်သတ်ချက်ရှိသည်။ ဥပမာအားဖြင့်:
; php.ini
include_path = ".:/usr/local/php/includes"
ဤပြင်ဆင်မှုသည် PHP scripts အားလုံး၏အပြုအမူကိုသက်ရောက်သည်။ set_includude_path () ကိုခေါ်သော်လည်းအကျိုးသက်ရောက်မှုမယူပါက, လက်ရှိ ပါ 0 င်သော code ကို ကြည့်ရန်အောက်ပါကုဒ်ကိုသုံးနိုင်သည်။
echo get_include_path();
ထို့အပြင်သင်အသုံးပြုပါက apache အောက်တွင်ရှိသည် .htaccess ကို သင်လည်းအလားတူသတ်မှတ်ချက်များကိုချမှတ်နိုင်သည်
php_value include_path ".:/some/path"
၎င်းသည် set_include_path () ကိုအကျိုးသက်ရောက်မှုမအောင်မြင်စေရန် script_include_path () ကိုဖြစ်စေနိုင်သည်။
Set_includude_path () သည် လက်ရှိကွပ်မျက်သောပတ်ဝန်းကျင်တွင်ချက်ချင်းအကျိုးသက်ရောက်သည်။ Target file အပါအ 0 င် set_include_path () ကို သင်ခေါ်ဆိုပါ။
set_include_path(get_include_path() . PATH_SEPARATOR . '/var/www/gitbox.net/includes');
require_once 'somefile.php';
အချို့သောပြင်းထန်သောဖြစ်ရပ်များတွင် set_includude_path () ကို ပြန်လည်ရေးသားခြင်းသို့မဟုတ်အချို့သော extensions သို့မဟုတ်မူဘောင်များကလျစ်လျူရှုနိုင်သည်။ ဤအချိန်တွင် Ini_set ကို အသုံးပြု. လမ်းကြောင်းသတ်မှတ်ရန်ကြိုးစားနိုင်သည်။
ini_set('include_path', get_include_path() . PATH_SEPARATOR . '/var/www/gitbox.net/includes');
require_once 'somefile.php';
ဒီနှစ်ခုဟာများသောအားဖြင့်ညီမျှပေမယ့် ini_set () က PHP အင်ဂျင်ကို PHP အင်ဂျင်ကို configuration parameters တွေကိုပိုပြီးအတိအလင်းပြုပြင်ဖို့ပြောတယ်။
မည်သည့်အရာမျှအလုပ်မလုပ်မိပါက, ၎င်းသည်ပြောင်းလွယ်ပြင်လွယ်ဆုံးနည်းမဟုတ်သော်လည်း၎င်းသည်တည်ငြိမ်သောလည်ပတ်မှုကိုသေချာစေနိုင်သည်။
require_once '/var/www/gitbox.net/includes/somefile.php';
command line တွင် PHP script (cli mode) ကို run သောအခါ၎င်းသည် Php.INI Configuration သည်ဝဘ်ပတ်ဝန်းကျင်နှင့်လုံးဝကွဲပြားနိုင်သည်။ ဥပမာအားဖြင့်, သင်သည်မှန်ကန်သော command line တွင်မှန်ကန်သော command line တွင်ထည့်သွင်းနိုင်သည်။ ကွဲပြားခြားနားသောပတ်ဝန်းကျင်တွင် configurations များကိုစစ်ဆေးရန်အောက်ပါကုဒ်ကိုသုံးပါ။
php -i | grep include_path
နှင့်:
// browser အတွက် execute
phpinfo();
သငျသညျ composer သို့မဟုတ်အခြား autooloading tools တွေကိုအသုံးပြုပါကသူတို့က change_path ကိုအားကိုးစရာမဟုတ်ဘဲ၎င်းတို့၏ကိုယ်ပိုင်ပြည်တွင်းလမ်းကြောင်းမြေပုံရေးဆွဲရေးယန္တရားကိုအသုံးပြုသည်။ ပြုပြင်ခြင်း သည် ဤအချိန်တွင်ဤအချိန်တွင်ဤအချိန်တွင်မမှန်ကန်ပါ။ ဥပမာအားဖြင့် Composer ၏ Autoload.php သည် ထည့်သွင်းထားသောအစား inspark phappathing ကိုသုံးမည့်အစားမြေပုံရှိသည်။
Get_includude_Path () setting ကိုလျစ်လျူရှုထားသည့်ပြ problem နာကိုလျစ်လျူရှုထားသည့်အခါသင် code ကိုကြည့်ရုံမျှမက code ကိုကြည့်ရုံသာမက configuration files, web server ပတ်ဝန်းကျင်, ယေဘုယျအားဖြင့်ပြောရလျှင် set_includude_path () သည် လမ်းကြောင်း setting logic ကိုမှန်ကန်သောအနေအထားတွင်ထားရှိပြီးအခြားမည်သည့်ယန္တရားကိုမလွှမ်းမိုးနိုင်ကြောင်းသေချာစေရန်မျှော်လင့်ထားသည့်အတိုင်းမျှော်လင့်ထားသည့်အတိုင်းအကျိုးသက်ရောက်သင့်သည်။
PHP ၏ File Loading ယန္တရားကိုမှန်ကန်သောနားလည်မှုသည်တည်ငြိမ်ပြီးထိန်းသိမ်းနိုင်သောကုဒ်ရေးသားခြင်းအတွက်အထူးအရေးကြီးသည်။ ဤဆောင်းပါးတွင်ခွဲခြမ်းစိတ်ဖြာခြင်းသည်ပြ the နာကိုဖြေရှင်းရန်နှင့်ပြ problem နာကိုဖြေရှင်းနိုင်ရန်ကူညီနိုင်သည်ဟုကျွန်ုပ်မျှော်လင့်ပါသည်။