PHP get_headers: ສົ່ງຄຳຮ້ອງ HTTP HEAD ຜ່ານພຣັອກຊີ
ສົ່ງ stream context ໂດຍກົງໃຫ້ get_headers, ເລືອກ HEAD ຢ່າງຕັ້ງໃຈ ແລະ ຕັດສິນວ່າຈະຕາມການປ່ຽນເສັ້ນທາງຫຼືບໍ່.
ໃນ PHP, get_headers() ຮັບ stream context ເປັນອາກູເມັນທີສາມຂອງມັນ. ໃນ PHP 8, ການກວດສອບຫົວຂໍ້ສຳລັບ URL HTTP ສາມາດມີການຕັ້ງຄ່າພຣັອກຊີຂອງຕົວເອງ:
$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');
}ພຣັອກຊີແມ່ນຈຸດສິ້ນສຸດ TCP ສຳລັບຕົວຫຸ້ມສະຕຣີມ HTTP. ປ່ຽນແທນໂຮສ ແລະ ພອດຕົວແທນຂອງມັນດ້ວຍຜູ້ສະໝັກທີ່ບໍ່ມີການພິສູດຕົວຕົນຈາກ ລາຍຊື່ພຣັອກຊີ HTTP ສຳລັບການກວດສອບ HTTP ສາທາລະນະນີ້. request_fulluri ໃຫ້ URI ປາຍທາງເຕັມໃນແຖວຄຳຮ້ອງ HTTP, ດັ່ງທີ່ພຣັອກຊີສົ່ງຕໍ່ຫຼາຍໆຕົວຄາດຫວັງ. context ນີ້ເປັນຂອງການເອີ້ນນີ້; ມັນບໍ່ປ່ຽນ context ເລີ່ມຕົ້ນທີ່ການອ່ານ URL ອື່ນໃຊ້.
ເຖິງຈະມີຊື່ຟັງຊັນແບບນັ້ນ, ວິທີຄຳຮ້ອງເລີ່ມຕົ້ນຂອງມັນແມ່ນ GET. ວິທີ HEAD ຢ່າງຊັດເຈນຂໍເມຕາດາຕາການຕອບກັບຈາກເຊີບເວີໂດຍບໍ່ມີເນື້ອຄວາມຕອບກັບທີ່ກົງກັນ. ເຊີບເວີອາດປະຕິເສດ HEAD ຫຼື ຈັດການມັນຕ່າງອອກໄປ, ດັ່ງນັ້ນການກວດສອບຫົວຂໍ້ທີ່ສຳເລັດບໍ່ແມ່ນຫຼັກຖານວ່າການດາວໂຫຼດຕໍ່ມາຈະສຳເລັດ.
ທີ່ນີ້, ການຕາມການປ່ຽນເສັ້ນທາງຖືກປິດເພື່ອກວດເບິ່ງການຕອບກັບທຳອິດ. ເມື່ອນັ້ນຫົວຂໍ້ Location ແລະ ສະຖານະການປ່ຽນເສັ້ນທາງຈະເປັນຜົນທີ່ເປັນປະໂຫຍດ ບໍ່ແມ່ນຄຳແນະນຳໃຫ້ໄປເອົາ URL ອື່ນ. ຖ້າການກວດສອບຄວນຕາມການປ່ຽນເສັ້ນທາງ, ຈົ່ງປ່ຽນນະໂຍບາຍນັ້ນຢ່າງຕັ້ງໃຈ ແລະ ຄິດເຖິງຫົວຂໍ້ຕອບກັບເພີ່ມເຕີມ.
ອາກູເມັນ false ຮັກສາອາຣາຍຫົວຂໍ້ທີ່ມີດັດຊະນີ. ໃຊ້ true ເມື່ອການແຍກແບບສຳພັນມີປະໂຫຍດກວ່າ.