Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php $baseParams=['token'=>'8932dd0b76965df4723bb862cc00ec2d1f79282d','useWebSuppliers'=..
Decoded Output download
<?php
$baseParams=['token'=>'8932dd0b76965df4723bb862cc00ec2d1f79282d','useWebSuppliers'=>1,'customerID'=>308,'useAnalogs'=>1];$logFile='api_requests.log';function log_message($message){global $logFile;$timestamp=date('Y-m-d H:i:s');file_put_contents($logFile,$timestamp.' - '.$message.PHP_EOL,FILE_APPEND);}
$rawPostData=file_get_contents('php://input');$items=json_decode($rawPostData,true);$results=[];$concurrentRequests=2;$pauseBetweenBatches=3;
if(isset($items)&&is_array($items)){$chunks=array_chunk($items,$concurrentRequests);
foreach($chunks as $chunk){$mh=curl_multi_init();$curlHandles=[];
foreach($chunk as $item){$itemId=$item['id'];$retries=3;$success=false;$ch=curl_init();
$params=$baseParams+['brand'=>$item['brand'],'code'=>$item['oem']];$url='https://www.avto-zakup.ru/api/v1/search/?'.http_build_query($params);
curl_setopt($ch,CURLOPT_URL,$url);curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_multi_add_handle($mh,$ch);$curlHandles[$itemId]=[$ch,$retries,&$success];}
do{$status=curl_multi_exec($mh,$running);curl_multi_select($mh);}while($running>0&&$status===CURLM_OK);
foreach($chunk as $item){$itemId=$item['id'];$ch=$curlHandles[$itemId][0];$retries=&$curlHandles[$itemId][1];$success=&$curlHandles[$itemId][2];
$httpCode=curl_getinfo($ch,CURLINFO_HTTP_CODE);$response=curl_multi_getcontent($ch);
if($httpCode>=200&&$httpCode<300){$results[$itemId]=json_decode($response,true);$success=true;log_message(" ID: $itemId. : $httpCode");
}else{$retries--;log_message(" ID: $itemId. : $httpCode. ".(3-$retries).". : $retries");
if($retries>0){sleep(3);curl_multi_remove_handle($mh,$ch);curl_multi_add_handle($mh,$ch);
do{$status=curl_multi_exec($mh,$running);curl_multi_select($mh);}while($running>0&&$status===CURLM_OK);
$httpCode=curl_getinfo($ch,CURLINFO_HTTP_CODE);$response=curl_multi_getcontent($ch);
if($httpCode>=200&&$httpCode<300){$results[$itemId]=json_decode($response,true);$success=true;
log_message(" ID: $itemId. : $httpCode");}}}
curl_multi_remove_handle($mh,$ch);curl_close($ch);if(!$success){$results[$itemId]=": ";}}
curl_multi_close($mh);log_message(" : $pauseBetweenBatches ");sleep($pauseBetweenBatches);}
header('Content-Type: application/json');echo json_encode($results);}else{log_message(": \$items JSON.");
echo": \$items JSON. POST.
";var_dump($rawPostData);}
?>
Did this file decode correctly?
Original Code
<?php
$baseParams=['token'=>'8932dd0b76965df4723bb862cc00ec2d1f79282d','useWebSuppliers'=>1,'customerID'=>308,'useAnalogs'=>1];$logFile='api_requests.log';function log_message($message){global $logFile;$timestamp=date('Y-m-d H:i:s');file_put_contents($logFile,$timestamp.' - '.$message.PHP_EOL,FILE_APPEND);}
$rawPostData=file_get_contents('php://input');$items=json_decode($rawPostData,true);$results=[];$concurrentRequests=2;$pauseBetweenBatches=3;
if(isset($items)&&is_array($items)){$chunks=array_chunk($items,$concurrentRequests);
foreach($chunks as $chunk){$mh=curl_multi_init();$curlHandles=[];
foreach($chunk as $item){$itemId=$item['id'];$retries=3;$success=false;$ch=curl_init();
$params=$baseParams+['brand'=>$item['brand'],'code'=>$item['oem']];$url='https://www.avto-zakup.ru/api/v1/search/?'.http_build_query($params);
curl_setopt($ch,CURLOPT_URL,$url);curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_multi_add_handle($mh,$ch);$curlHandles[$itemId]=[$ch,$retries,&$success];}
do{$status=curl_multi_exec($mh,$running);curl_multi_select($mh);}while($running>0&&$status===CURLM_OK);
foreach($chunk as $item){$itemId=$item['id'];$ch=$curlHandles[$itemId][0];$retries=&$curlHandles[$itemId][1];$success=&$curlHandles[$itemId][2];
$httpCode=curl_getinfo($ch,CURLINFO_HTTP_CODE);$response=curl_multi_getcontent($ch);
if($httpCode>=200&&$httpCode<300){$results[$itemId]=json_decode($response,true);$success=true;log_message(" ID: $itemId. : $httpCode");
}else{$retries--;log_message(" ID: $itemId. : $httpCode. ".(3-$retries).". : $retries");
if($retries>0){sleep(3);curl_multi_remove_handle($mh,$ch);curl_multi_add_handle($mh,$ch);
do{$status=curl_multi_exec($mh,$running);curl_multi_select($mh);}while($running>0&&$status===CURLM_OK);
$httpCode=curl_getinfo($ch,CURLINFO_HTTP_CODE);$response=curl_multi_getcontent($ch);
if($httpCode>=200&&$httpCode<300){$results[$itemId]=json_decode($response,true);$success=true;
log_message(" ID: $itemId. : $httpCode");}}}
curl_multi_remove_handle($mh,$ch);curl_close($ch);if(!$success){$results[$itemId]=": ";}}
curl_multi_close($mh);log_message(" : $pauseBetweenBatches ");sleep($pauseBetweenBatches);}
header('Content-Type: application/json');echo json_encode($results);}else{log_message(": \$items JSON.");
echo": \$items JSON. POST.\n";var_dump($rawPostData);}
?>
Function Calls
None |
Stats
MD5 | 951c9dc598fbd809c723bd02ed434720 |
Eval Count | 0 |
Decode Time | 54 ms |