Gbigbe Àyíká èròjà sí Ọ̀rọ̀ Àṣẹ Ọmọ PHP
Lo àyíká ọ̀tọ̀ọ̀tọ̀ àti àkójọ àríyànjiyàn ti proc_open fún olùgbàjá kan, ní pípayà àwọn iye tí a jogún mọ̀ọ́mọ̀.
Fún PHP 7.4 tàbí tó tuntun, jẹ́ kí àwọn àríyànjiyàn àṣẹ àti àyíká ìlànà ọmọ yàtọ̀:
$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 àti $descriptorSpec wá láti inú ìtọ́jú èsì tí ó wà tẹ́lẹ̀ ti ohun-èlò náà. Ṣàyẹ̀wò ìfilọ́lẹ̀ tí ó kùnà, ṣàkóso àwọn pọ́ìpù kí o sì ti ìlànà náà parí nípasẹ̀ ìgbèé-ayé yẹn.
array_replace(getenv(), ...) ó ń pa àyíká obí mọ́ bí ó ṣe ń rọ́pò àwọn iye méjì wọ̀nyí fún ọmọ. Ṣàgbéwò àwọn àfiwé pọ́rósì àti àwọn àfiwé ìforígbárí tí a jogún ní lẹ́tà ńlá nígbà tí wọ́n bá lè yí ọ̀nà tí a ní lọ́kàn padà.
Àkójọ àríyànjiyàn ń dá shell dúró láti túmọ̀ àwọn àmì ampersand, àmì dọ́là tàbí àwọn àlàfo inú ẹ̀rí ìdánimọ̀. Kò sí ìpín tí ó gbé àkọsílẹ̀ tí a fi sínú àṣẹ shell.
Àpẹẹrẹ yìí yan curl nítorí pé ó ṣe àtìlẹ́yìn àwọn àfiwé tí a fi hàn. Àdírẹ́sì kan láti àkójọ pọ́rósì HTTP lè kún àwọn iye àyíká yẹn fún ipa-ọ̀nà HTTP gbogbogbò. Ohun èlò mìíràn nílò ìfarapọ́ pọ́rósì tí ó ṣe àtìlẹ́yìn fúnrarẹ̀; àwọn àṣàyàn cURL ti PHP fúnra rẹ̀ kò ṣètò ètò ìta yẹn.