U gudbinta deegaanka proxy ee amarka ilma ee PHP
Isticmaal deegaanka gooni ah iyo taxanaha doodaha ee proc_open hal soo-dejiye, adigoo si ula kac ah u ilaalinaya qiyamka la dhaxlay.
PHP 7.4 ama ka dambe, kala saar doodaha amarka iyo deegaanka habka ilma:
$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 iyo $descriptorSpec waxay ka yimaadaan maareynta soo-saarka ee jira ee barnaamijka. Hubi guuldarrada bilaabista, maamul tuubooyinka oo xir habka iyada oo loo marayo wareegga noloshaas.
array_replace(getenv(), ...) waxay ilaalisaa deegaanka waalidka iyadoo beddelaysa labadan qiime ilma. Dib u eeg doorsoomayaasha proxy iyo dhaafka ee la dhaxlay ee xarfaha waaweyn marka ay beddeli karaan dariiqa loogu talagalay.
Taxanaha dooduhu wuxuu ka hortagaa shell inuu fasiraan ampersands, calaamadaha dollarka ama boosaska aqoonsiga. Ma jiro wax u qoondeyn ah oo xambaarsan akoon oo lagu daray amarka shell.
Tusaalahan wuxuu doortaa curl sababtoo ah waxay taageertaa doorsoomayaasha la muujiyay. Cinwaan ka yimid liiska proxy HTTP ayaa buuxin kara qiyamkaas deegaanka ee dariiqa HTTP ee dadweynaha. Faylka fulinta ee kale wuxuu u baahan yahay is-dhexgalka proxy ee u gaar ah ee la taageeray; xulashooyinka cURL ee PHP laftiisa ma habeynayaan barnaamijkaas dibadda.