PHP 7.4 ياكى ئۇنىڭدىن يېڭىسى ئۈچۈن، بۇيرۇق پارامېتىرلىرى بىلەن بالا جەريان مۇھىتىنى ئايرىم ساقلاڭ:

$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 ۋە $descriptorSpec پروگراممىنىڭ مەۋجۇت چىقىرىشنى بىر تەرەپ قىلىشىدىن كېلىدۇ. مەغلۇپ باشلىنىشنى تەكشۈرۈڭ، تۇرۇبىلارنى باشقۇرۇڭ ۋە جەرياننى شۇ ھايات دەۋرى ئارقىلىق تاقاڭ.

array_replace(getenv(), ...) ئاتا مۇھىتنى ساقلاپ، بۇ ئىككى قىممەتنى بالا ئۈچۈن ئالماشتۇرىدۇ. مىراس قالدۇرۇلغان چوڭ ھەرپلىك ۋاكالەتچى ۋە چەتلىتىش ئۆزگەرگۈچىلىرىنى، ئۇلار مەقسەت قىلىنغان يولنى ئۆزگەرتەلەيدىغان چاغدا قايتا قاراپ چىقىڭ.

پارامېتىر تىزىملىكى قېپىقنىڭ كىملىك ئۇچۇرىدىكى ئامپېرساند، دوللار بەلگىسى ياكى بوشلۇقلارنى چۈشەندۈرۈشىنى توسىدۇ. قېپىق بۇيرۇقىدا ھېسابات كۆتۈرۈيدىغان تەقسىملەش قىستۇرۇلمىغان.

بۇ مىسال curl نى تاللايدۇ، چۈنكى ئۇ كۆرسىتىلگەن ئۆزگەرگۈچىلەرنى قوللايدۇ. HTTP ۋاكالەتچى تىزىملىكىدىن ئادرېس ئاممىۋى HTTP يولى ئۈچۈن بۇ مۇھىت قىممەتلىرىنى تولدۇرالايدۇ. باشقا ئىجرا قىلىنىدىغان ھۆججەت ئۆزىنىڭ قوللىنىلىدىغان ۋاكالەتچى كۆرۈنمە يۈزىگە موھتاج؛ PHP نىڭ ئۆز cURL تاللانمىلىرى بۇ تاشقى پروگراممىنى تەڭشىمەيدۇ.

مۇناسىۋەتلىك ماقالىلەر