更改此代码以使用curl

Because I cannot get the pecl_http extension that is needed, I need to change this bit of code

<?php
    $files = array(
        array(
            'name' => 'torrent',            // Don't change
            'type' => 'application/x-bittorrent',
            'file' => 'my.torrent'          // Full path for file to upload
        )
    );

    $http_resp = http_post_fields( 'http://torcache.net/autoupload.php', array(), $files );
    $tmp = explode( "
", $http_resp );
    $infoHash = substr( $tmp[count( $tmp ) - 1], 0, 40 );
    unset( $tmp, $http_resp, $files );
?>

to use curl instead, here is what i have so far;

<?php
    $files = array(
        array(
            'name' => 'torrent',            // Don't change
            'type' => 'application/x-bittorrent',
            'file' => '0-273-70244-0.pdf.torrent'           // Full path for file to upload
        )
    );





$ch = curl_init();                   //this part we set up curl 
curl_setopt($ch, CURLOPT_URL,'http://torcache.net/autoupload.php');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 15);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $files);
$xml_response = curl_exec($ch);
curl_close($ch);
return $xml_response;
$infoHash= substr($xml_response,0,40);

however something is wrong as the string is not being shown after the upload, i just get a blank webpage

any ideas?

You only need to use return if you want to pass back data from within a function. In your code you aren't doing that, so instead the return is ending the processing of your document early.

Removing the return should fix your issue.