လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Get_includude_Path () နှင့်ပါ 0 င်သောပ conflict ိပက်ခ၏ပြ problem နာကိုဖြေရှင်းပါ

Get_includude_Path () နှင့်ပါ 0 င်သောပ conflict ိပက်ခ၏ပြ problem နာကိုဖြေရှင်းပါ

gitbox 2025-05-29

PHP, Get_includude_path () နှင့် ပါဝင်သောအခါ () တွင်အတူတကွပေါ်လာသည့်လုပ်ဆောင်ချက်နှစ်ခုဖြစ်သည်။ သို့သော်အချို့ဖြစ်ရပ်များတွင် developer များသည်ရှုပ်ထွေးသောပြ problem နာတစ်ခု နှင့် ကြုံတွေ့ရနိုင်သည်။ ထိုလမ်းကြောင်းကိုထည့်သွင်းထားသည့်လမ်းကြောင်းကိုထည့်သွင်းထားသော်လည်း, ဤ "ပ conflict ိပက်ခ" သည်အမှန်တကယ်အကြောင်းပြချက်များစွာကြောင့်ဖြစ်သည်။ ဤဆောင်းပါးသည်ခွဲခြမ်းစိတ်ဖြာပြီးဖြေရှင်းနည်းများကိုတစ် ဦး ချင်းစီမှဖြေရှင်းရန်ဖြစ်သည်။

1 ။ Get_includude_Path () နှင့် ပါ 0 င်ခြင်းတို့အကြားဆက်နွယ်မှုကိုနားလည်ပါ။

PHP တွင် () function တွင် () function သည်အောက်ပါအစီအစဉ်များကိုရှာဖွေလိမ့်မည်။

  1. ဆွေမျိုးလမ်းကြောင်းများကိုသုံးပါ (လက်ရှိဖိုင်၏လမ်းညွှန်သို့နှိုင်းယှဉ်ပါ)

  2. လက်ရှိ script တည်နေရာတည်ရှိရာလမ်းညွှန်ကိုရှာပါ

  3. compath_path တွင် configured လမ်းကြောင်းမှတဆင့်ကြားမှာ

get_include_path () သည်လက်ရှိပါဝင်သော aspath through configuration ကိုရရှိရန်အတွက်ကိရိယာတစ်ခုဖြစ်သည်။ လက်ရှိချိန်ညှိချက်များကိုကြည့်ရှုရန်၎င်းကိုသင်အသုံးပြုနိုင်သည်။

 echo get_include_path();

Set_includududududududude_path () မှတဆင့်သင် dynampather ကိုပြောင်းလဲနိုင်သည်။

 set_include_path(get_include_path() . PATH_SEPARATOR . '/usr/local/lib/php');

2 ။ မကြာခဏမေးလေ့ရှိသောမေးခွန်းများနှင့်ပ conflicts ိပက်ခများ

မေးခွန်း 1 - လမ်းကြောင်းကိုမှန်ကန်စွာထည့်သွင်းခြင်းမပေးပါ

တစ်ခါတစ်ရံ set_include_path () ကိုခေါ်သော်လည်းလမ်းကြောင်းကိုတကယ်ထည့်သွင်းမထားပေ။ အောက်ပါအတိုင်းသာမန်အမှားများသည်အောက်ပါအတိုင်းဖြစ်သည် -

 set_include_path('/some/path');
set_include_path('/another/path'); // ယခင် settings ကို overwrite

ဖြေရှင်းချက် -

overwriting အစားလမ်းကြောင်းဖြည့်ရန် Path_separator ကို သုံးပါ။

 set_include_path(get_include_path() . PATH_SEPARATOR . '/another/path');

မေးခွန်း 2 - ထည့်သွင်းပါ () တွင် ထည့်သွင်းထားသောလမ်းကြောင်းများကိုအသုံးပြုသည်

အကယ်. ထည့်သွင်းပါက (config / config.php ') ကို ဟုခေါ်သည်ဆိုပါက PHP သည် Config / config.php တွင်ပါ 0 င်နေလျှင်ပင်လက်ရှိ script လမ်းညွှန်လမ်းညွှန်နှင့်အညီစတင်ရှာဖွေလိမ့်မည်။ လက်ရှိလမ်းညွှန်ဖွဲ့စည်းပုံသည်မမှန်ကန်ပါက၎င်းသည် "ဖိုင်မတွေ့ပါ" ဟူသောအမှားတစ်ခုကိုလည်းဖြစ်ပေါ်စေလိမ့်မည်။

ဖြေရှင်းချက် -

လမ်းကြောင်းအတွက် directory အစိတ်အပိုင်းကိုဖယ်ရှားပါနှင့် ဖြ ည့်ပါ။ ဥပမာအားဖြင့်:

 include('config.php'); // config.php ဒီမှာပြီးပြီ include_path လမ်းကြောင်း၌တည်၏

မေးခွန်း 3. ဖိုင်သည်အမှန်တကယ်တည်ရှိခြင်းမရှိပါ။ ခွင့်ပြုချက်မလုံလောက်ပါ

အကယ်. contink_path ကိုမှန်ကန်စွာသတ်မှတ်ထားလျှင်ပင်ဖိုင်မရှိပါကသို့မဟုတ်ခွင့်ပြုချက်မဖတ်ပါက၎င်းသည်ကျရှုံးလိမ့်မည်။

ပြ esh နာဖြေရှင်းခြင်းအကြံပြုချက်များ:

  • ဖိုင်လမ်းကြောင်းမှန်ကန်ကြောင်းသေချာစေရန်သင် command line ပေါ်တွင် LS သို့မဟုတ် File_exists () ဖြင့်စစ်ဆေးရန်ကြိုးစားနိုင်သည်။

 echo file_exists('/path/to/config.php') ? 'found' : 'not found';
  • PHP အသုံးပြုသူသည်ခွင့်ပြုချက်ကိုဖတ်ရန်သေချာစေရန်ဆာဗာခွင့်ပြုချက် settings ကိုစစ်ဆေးပါ။

ပြ Proble နာ 4: ဖိုင်များအပါအ 0 င် URL ကိုအသုံးပြုသောအခါ configuration ကို enable မလုပ်ပါ

PHP သည် Remote files များအပါအ 0 င်အဝေးမှဖိုင်များအပါအ 0 င်အထောက်အပံ့များ -

 include('http://gitbox.net/includes/header.php');

ဒီ function က configuration two items_url_include နှင့် Allow_URL_FOPOPEN နှင့် Allow_URL_FOPEN နှင့် server_url_fopen တို့တွင်မူတည်သည်။

ဖြေရှင်းချက် -

ဤချိန်ညှိချက်များကို Php.ini တွင်ဖွင့်ပါ။

 allow_url_fopen = On
allow_url_include = On

သို့သော်လုံခြုံရေးအကြောင်းပြချက်များကြောင့်အထူးသဖြင့် HTTP protocol ကို အသုံးပြု. ထုတ်လုပ်မှုပတ် 0 န်းကျင်တွင် URL ပါဝင်မှုကို enable လုပ်ရန်အကြံပြုသည်။

3 ။ အကြံပြုလေ့ကျင့်ခန်း

  • ပကတိလမ်းကြောင်းများကိုအသုံးပြုရန်ကြိုးစားပါ သို့မဟုတ်ဆွေမျိုးလမ်းကြောင်းများတည်ဆောက်ရန် __Dir__ စဉ်ဆက်မပြတ်ကိုသုံးပါ။

     include(__DIR__ . '/includes/config.php');
    
  • MANGAGE AUPPATHETER AUTOLOAD သို့မဟုတ်မူဘောင်များ - ခေတ်သစ်မူဘောင်များသည်များသောအားဖြင့် PSR-4 ကဲ့သို့သောအလိုအလျောက် 0 န်ဆောင်မှုပေးသည့်ယန္တရားများကိုအသုံးပြုလေ့ရှိသည်။

  • ဖြန့်ကျက်မှုအဆင့်တွင်စမ်းသပ်ခြင်းတွင်စမ်းသပ်ခြင်း အွန်လိုင်းတွင်မသွားမီလမ်းကြောင်းစစ်ဆေးရန်အကြံပြုသည်။

အကျဉ်းချုပ်

Get_includude_path () တွင်ပ conflict ိ ပက်ခသည် () တွင်ပ conflict ိပက်ခမဟုတ်သော်လည်း၎င်းတို့သည်မှားယွင်းသောအသုံးပြုမှုနည်းလမ်းက၎င်းတို့အား "တိုက်ပွဲများ" နှင့်တူသည်။ သူတို့၏ရှာဖွေရေးယန္တရားကိုနားလည်ခြင်းနှင့်တင်ရန်အမိန့်ကိုနားလည်ခြင်းသည်ပြ the နာကိုဖြေရှင်းရန်သော့ချက်ဖြစ်သည်။ ဆင်ခြင်တုံတရားကိုပြင်ဆင်ခြင်းအားဖြင့် into_path, လမ်းကြောင်းကိုမှန်ကန်စွာရေးခြင်းနှင့်ဝေးလံခေါင်သီသောဖိုင်များပါ 0 င်ရန် URL များကိုအသုံးပြုခြင်းကိုရှောင်ရှားခြင်း,