Envie uma solicitação de postagem XML para um servidor da Web com CURL

Estou tentando enviar uma solicitação para um servidor da web usando php e curl. Eu não fiz algo assim antes e, embora existam muitos bons exemplos on-line, tenho algumas dificuldades em entender alguns dos comandos de curl.

Isto é o que eu quero fazer: Existe um serviço web estabelecido (por exemplo: serviço de mapa da web) e eu quero que meu código php envie uma solicitação de post XML para este serviço. Como resposta, quero obter um arquivo XML.

Isso é o que eu tenho até agora:

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, ''); 
    /*curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/xml'));*/
    /* curl_setopt($ch, CURLOPT_HEADER, 0);*/
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $xml);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);
    /*curl_setopt($ch, CURLOPT_REFERER, '');*/
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $ch_result = curl_exec($ch);
    curl_close($ch);
    echo $ch_result;

Como eu disse, eu sou muito novo em php e também no uso de curl e acho que estou perdendo alguns conceitos. Minhas perguntas são: 1) Qual é a string (link) que eu tenho que colocar no:

          curl_setopt($ch, CURLOPT_URL, ''); 

É o nome do host do serviço para o qual desejo enviar a solicitação?

2) Na linha 6, a variável $ xml contém o arquivo xml que eu quero enviar como uma solicitação. É correto ou esta variável deve conter alguma outra coisa?

3) Em quais casos eu preciso usar um httpheader ou header (row3 e row4);

Obrigado pela ajuda. Dimitris

questionAnswers(2)

yourAnswerToTheQuestion