$filename = realpath( './uploads/20.jpg' );
$cfile = new CurlFile( $filename, 'image/jpeg', $filename );
$data = array( 'file' => $cfile );
$taggun_endpoint = 'https://api.taggun.io/api/receipt/v1/simple/file';
CURLOPT_URL => $taggun_endpoint,
CURLOPT_RETURNTRANSFER => true,
CURLINFO_HEADER_OUT => true,
CURLOPT_HTTPHEADER => array(
'Accept: application/json',
'Content-Type: multipart/form-data',
CURLOPT_POSTFIELDS => $data,
curl_setopt_array( $ch, $options );
$result = curl_exec( $ch );
$header_info = curl_getinfo( $ch, CURLINFO_HEADER_OUT );
$header_size = curl_getinfo( $ch, CURLINFO_HEADER_SIZE );
$header = substr( $result, 0, $header_size );
$body = substr( $result, $header_size );
<title>File Upload results</title>
<p>Raw Result: <?php echo $result; ?>
<p>Header Sent: <?php echo $header_info; ?></p>
<p>Header Received: <?php echo $header; ?></p>
<p>Body: <?php echo $body; ?></p>