PHP get_headers: প্ৰক্সিৰ জৰিয়তে HTTP HEAD অনুৰোধ পঠিয়াওক
get_headers-লৈ পোনপটীয়াকৈ এটা stream context দিয়ক, HEAD ইচ্ছাকৃতভাৱে বাছনি কৰক আৰু ৰিডাইৰেক্ট অনুসৰণ কৰিব নে নকৰিব সিদ্ধান্ত লওক।
PHP ৰ get_headers() এ ইয়াৰ তৃতীয় আৰ্গুমেন্ট হিচাপে এটা stream context গ্ৰহণ কৰে। PHP 8 ত, এটা HTTP URL ৰ বাবে হেডাৰ পৰীক্ষাই নিজৰ প্ৰক্সি সংৰচনা বহন কৰিব পাৰে:
$context = stream_context_create([
'http' => [
'proxy' => 'tcp://proxy.example.net:8080',
'request_fulluri' => true,
'method' => 'HEAD',
'follow_location' => 0,
'timeout' => 10,
],
]);
$headers = get_headers('http://example.net/file.zip', false, $context);
if ($headers === false) {
throw new RuntimeException('Header request failed');
}প্ৰক্সিটো HTTP stream wrapper ৰ বাবে এটা TCP এণ্ডপইণ্ট। এই ৰাজহুৱা HTTP পৰীক্ষাৰ বাবে ইয়াৰ প্লে'ছহোল্ডাৰ হোষ্ট আৰু পৰ্ট HTTP প্ৰক্সি তালিকাৰ পৰা এটা অনুমোদনহীন প্ৰাৰ্থীৰ সৈতে সলনি কৰক। request_fulluri এ HTTP অনুৰোধ শাৰীত সম্পূৰ্ণ গন্তব্য URI যোগান ধৰে, যিদৰে বহু ফৰৱাৰ্ড প্ৰক্সিয়ে আশা কৰে। এই context এই কলৰ; ই আন URL পঢ়াত ব্যৱহৃত অবিকল্পিত context সলনি নকৰে।
ফাংচনৰ নামৰ পিছতো, ইয়াৰ অবিকল্পিত অনুৰোধ পদ্ধতি GET। স্পষ্ট HEAD পদ্ধতিয়ে চাৰ্ভাৰৰ পৰা সংশ্লিষ্ট ৰেচপন্স বডি নোহোৱাকৈ ৰেচপন্স মেটাডেটা বিচাৰে। এটা চাৰ্ভাৰে HEAD নাকচ কৰিব পাৰে বা বেলেগ ধৰণে চম্ভালিব পাৰে, গতিকে সফল হেডাৰ পৰীক্ষা পিছত কৰা ডাউনলোড সফল হ'ব বুলি প্ৰমাণ নহয়।
ইয়াত প্ৰথম ৰেচপন্স পৰীক্ষা কৰিবলৈ ৰিডাইৰেক্ট অনুসৰণ নিষ্ক্ৰিয় কৰা হৈছে। Location হেডাৰ আৰু এটা ৰিডাইৰেক্ট স্থিতি তেতিয়া আন URL আনিবলৈ নিৰ্দেশনা নহয়, বৰং উপযোগী ফলাফল। যদি পৰীক্ষাই ৰিডাইৰেক্ট অনুসৰণ কৰিব লাগে, তেন্তে সেই নীতি ইচ্ছাকৃতভাৱে সলনি কৰক আৰু অতিৰিক্ত ৰেচপন্স হেডাৰৰ হিচাপ লওক।
false আৰ্গুমেন্টে এটা ইণ্ডেক্স কৰা হেডাৰ এৰে ৰাখে। যেতিয়া associative parsing অধিক উপযোগী, তেতিয়া true ব্যৱহাৰ কৰক।