তাদের মধ্যে কি কোনও পার্থক্য আছে? তাদের ব্যবহার পছন্দসই বিষয়? একে অপরের উপর ব্যবহার করে কি কোনও সুবিধা পাওয়া যায়? সুরক্ষার জন্য কোনটি ভাল?
তাদের মধ্যে কি কোনও পার্থক্য আছে? তাদের ব্যবহার পছন্দসই বিষয়? একে অপরের উপর ব্যবহার করে কি কোনও সুবিধা পাওয়া যায়? সুরক্ষার জন্য কোনটি ভাল?
উত্তর:
আপনি খুঁজে পেতে পার্থক্য বিস্তারিত পিএইচপি ম্যানুয়াল ব্যাখ্যা পৃষ্ঠায়require
:
require
include
ব্যর্থতা ব্যতীত এটির মতোই এটি মারাত্মকE_COMPILE_ERROR
স্তরের ত্রুটি তৈরি করবে । অন্য কথায় এটি স্ক্রিপ্টটি থামিয়ে দেবে যেখানে অন্তর্ভুক্ত রয়েছে কেবলমাত্র একটি সতর্কতা (E_WARNING
) যা এই স্ক্রিপ্টটি চালিয়ে যেতে দেয়।
উদাহরণের জন্য @ এফ্রিটজের উত্তর দেখুন
<?php if (isset($flibbertygibbet)) require 'file.php';
এই উত্তরটি সম্পূর্ণ ভুল বলে মনে হচ্ছে। অন্যথায়, শর্তটি সত্য না হলেও আমার একটি মারাত্মক ত্রুটি হওয়া উচিত। strace
এমনকি পিএইচপি এমনকি স্পর্শ করার চেষ্টা করছে না file.php
।
if (false) require 'file.php';
'ফাইল.এফপি' লোড হতে পারে (তবে কার্যকর করা হয়নি)। টিএলডিআর এই সমস্ত মন্তব্যকে উপেক্ষা করে।
require
যদি ফাইলটি লোড করা না যায় তবে একটি পিএইচপি মারাত্মক ত্রুটি ফেলবে। (ফাঁসি কার্যকর)
include
যদি ফাইলটি লোড করা না যায় তবে একটি সতর্কতা তৈরি করে। (ফাঁসি কার্যকর)
এখানে অন্তর্ভুক্ত এবং পার্থক্যটির একটি দুর্দান্ত চিত্রণ রয়েছে :
থেকে: পার্থক্য বনাম প্রয়োজন পিএইচপি অন্তর্ভুক্ত (রবার্ট; নভেম্বর 2012 দ্বারা)
ব্যবহার include
জন্য স্ক্রিপ্টের ফাইল লোড (ক্ষেত্রে এটি বিদ্যমান নয় ইত্যাদি) ছাড়া অব্যাহত কিছু মনে না করেন যদি এবং আপনি (যদিও আপনি উচিত নয়) একটি সতর্কবার্তা ত্রুটি বার্তা সঙ্গে লাইভ প্রদর্শিত হচ্ছে পারবেন না।
এর require
অর্থ হ'ল আপনার স্ক্রিপ্টটি যদি নির্দিষ্ট ফাইলটি লোড করতে না পারে এবং একটি মারাত্মক ত্রুটি ছুঁড়ে দেয় তবে এটি বন্ধ হয়ে যাবে।
অন্যরা যেমন উল্লেখ করেছে, কেবলমাত্র তফাতটি হ'ল মারাত্মক ত্রুটি নিক্ষেপ করা দরকার এবং এর মধ্যে রয়েছে - একটি ক্যাচযোগ্য সতর্কতা। কোনটি ব্যবহার করা উচিত তা হিসাবে, আমার পরামর্শটি অন্তর্ভুক্ত থাকতে হবে। কেন? কারণ আপনি একটি সতর্কতা পেতে পারেন এবং শেষ ব্যবহারকারীদের কাছে একটি অর্থবহ প্রতিক্রিয়া তৈরি করতে পারেন। বিবেচনা
// Example 1.
// users see a standard php error message or a blank screen
// depending on your display_errors setting
require 'not_there';
// Example 2.
// users see a meaningful error message
try {
include 'not_there';
} catch(Exception $e) {
echo "something strange happened!";
}
এনবি: উদাহরণস্বরূপ 2 টি কাজ করার জন্য আপনাকে এখানে বর্ণিত হিসাবে একটি ত্রুটি-থেকে-ব্যতিক্রম হ্যান্ডলার ইনস্টল করতে হবে http://www.php.net/manual/en/class.errorexception.php
function exception_error_handler($errno, $errstr, $errfile, $errline ) {
throw new ErrorException($errstr, 0, $errno, $errfile, $errline);
}
set_error_handler("exception_error_handler");
<?PHP
echo "Firstline";
include('classes/connection.php');
echo "I will run if include but not on Require";
?>
কোড সহ একটি খুব সাধারণ ব্যবহারিক উদাহরণ। প্রথম প্রতিধ্বনি প্রদর্শিত হবে। আপনি ব্যবহার করেন না কেন তা অন্তর্ভুক্ত বা প্রয়োজনীয় কারণ এর রানগুলি আগে অন্তর্ভুক্ত বা প্রয়োজনীয়।
ফলাফলটি পরীক্ষা করতে, কোনও কোডের দ্বিতীয় লাইনে ইচ্ছাকৃতভাবে ফাইলটির ভুল পথ সরবরাহ করে বা ফাইলের নামে ত্রুটি করে। সুতরাং প্রদর্শিত দ্বিতীয় প্রতিধ্বনি আপনি প্রয়োজন ব্যবহার করেন বা অন্তর্ভুক্ত করবেন কিনা তার উপর সম্পূর্ণ নির্ভরশীল ।
আপনি ব্যবহার করেন তাহলে প্রয়োজন দ্বিতীয় প্রতিধ্বনি চালানো হবে না কিন্তু যদি আপনি ব্যবহার অন্তর্ভুক্ত ব্যাপার না কি ত্রুটি আসে আপনিও দ্বিতীয় প্রতিধ্বনি ফল দেখতে হবে।
ব্রাউজারে অন্তর্ভুক্ত প্রোগ্রামটি শেষ করে না দেওয়া এবং সতর্কতা প্রদর্শন করা হবে না, অন্যদিকে ফাইলের সন্ধান না পাওয়ার ক্ষেত্রে প্রয়োজনীয় প্রোগ্রামটি সমাপ্ত হবে এবং মারাত্মক ত্রুটি প্রদর্শন করবে।