Autor Zpráva
Pavel Straka
Profil
Dobrý večer, rád bych poprosil zkušenější o radu.
Na hostingu, kde běží jistý skript není povolena vlastnost allow_url_fopen, která pro mě byla potřebná pro funkce simplexml_load_file a file_get_contents. Usmyslel jsem si tedy, že tyto funkce nahradím "použitím" cURL.

MŮJ PROBLÉM:
Pracuji na jistém XML importu, ten je ale v době od 23-7 hodin nedostupný a já jsem pod časovým tlakem, potřeboval bych tedy ujistit, že dle této logiky bude skript fungovat (sám to nyní vyzkoušet nemohu). "Problémové" funkce (nefunkční bez zapnutého allow_url_open) se ve skriptu vyskytují ve 3 případech (číslované v ukázce 1-3)

Použití dříve:
1) $xml = simplexml_load_file("http://URL_ADRESA"); // klasické načtení
2) $xml = simplexml_load_file("compress.zlib://URL_ADRESA"); // načtení zagzipovaného souboru
3)  $kopie = file_put_contents($img, file_get_contents($url)); // uložení fotografie

Použití nyní?:
 function file_get_contents_curl($url) {
    $ch = curl_init();

    curl_setopt($ch, CURLOPT_AUTOREFERER, TRUE);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_URL, $url);
    //curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);       

    $data = curl_exec($ch);
    curl_close($ch);

    return $data;
   }

1) $url = 'http://URL_ADRESA';
  $returned = file_get_contents_curl($url);
  $xml = simplexml_load_string($returned);

2) //Zde nevím, jak si poradit s kompresí.
   $url = 'http://URL_ADRESA';
  $returned = file_get_contents_curl($url);
  $xml = simplexml_load_string("compress.zlib://".$returned);

3) $kopie = file_put_contents($img, file_get_contents_curl($url));

Děkuji všem za ochotu pomoci.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: