Ƙaddamar da muhallin wakili zuwa umarnin ɗa na PHP
Yi amfani da keɓaɓɓen muhalli da jeri na hujja na proc_open don mai saukarwa ɗaya, tare da kiyaye ƙimar da aka gada da gangan.
Don PHP 7.4 ko sabon, riƙe hujjojin umarnin da muhallin aikin ɗa daban:
$environment = array_replace(getenv(), [
'http_proxy' => 'http://proxy.example:8080',
'https_proxy' => 'http://proxy.example:8080',
]);
$process = proc_open(
['/usr/bin/curl', '--fail', '--max-time', '30',
'--output', $outputFile, 'https://downloads.example/data.csv'],
$descriptorSpec,
$pipes,
null,
$environment
);$outputFile da $descriptorSpec sun fito daga sarrafa fitarwa na yanzu na manhajar. Duba gazawar farawa, sarrafa bututun, ka rufe aikin ta wannan zagayowar rayuwa.
array_replace(getenv(), ...) yana kiyaye muhallin iyaye yayin da yake maye gurbin waɗannan ƙimomi biyu ga ɗa. Yi bitar maɓallan wakili da tsallakewa da aka gada a manyan haruffa lokacin da za su iya canza hanyar da aka yi niyya.
Jerin hujja yana hana harsashi fassara ampersands, alamun dala ko sarari na shaidar shiga. Babu wani aiki mai ɗauke da asusu da aka saka a cikin umarnin harsashi.
Wannan misalin yana zaɓar curl saboda yana tallafawa maɓallan da aka nuna. Adireshi daga jerin wakilan HTTP na iya cika waɗannan ƙimar muhalli don hanyar HTTP ta jama'a. Wani fayil mai aiwatarwa yana buƙatar nasa ingantaccen hanyar wakili; zaɓuɓɓukan cURL na PHP ba sa saita wannan shirin na waje.