2013-02-25 86 views
7

मैं अपने कर्ल अनुरोध के लिए भाषा शीर्षलेख कैसे सेट कर सकता हूं? जैसे अब मुझे डच में facebook.com का होमपेज मिलता है, शायद इसलिए कि मेरा सर्वर नीदरलैंड/डिफ़ॉल्ट भाषा में हैडर द्वारा भेजता है? ..cUrl सेट भाषा शीर्षलेख

मैं इस मामले में डच से पहले अंग्रेजी पसंद करता हूं इसलिए मैंने कर्ल में httpheader सेट करने का प्रयास किया लेकिन मुझे कोई समझ नहीं है? मैं क्या गलत करता हूं या मुझे क्या सेट करना चाहिए?

(Zend अंकन)

CURLOPT_HTTPHEADER => 'Accept-Language: en-US;q=0.6,en;q=0.4', 

अग्रिम धन्यवाद!

उत्तर

3

आपको अपने अनुरोध में एक हेडर विकल्प जोड़ना होगा।

आप कुछ इस तरह होगा:

$options = array(
    CURLOPT_RETURNTRANSFER => true,  // return web page 
    CURLOPT_HEADER   => false, // don't return headers 
    CURLOPT_FOLLOWLOCATION => true,  // follow redirects 
    ..... 

$ch  = curl_init($url); 
curl_setopt_array($ch, $options); 
$content = curl_exec($ch); 
$err  = curl_errno($ch); 
$errmsg = curl_error($ch); 
$header = curl_getinfo($ch); 
curl_close($ch); 

आपको बस इतना करना है अपने $ विकल्प सरणी में यह पंक्ति जोड़ है:

CURLOPT_HTTPHEADER  => array("Accept-Language: en-US;q=0.6,en;q=0.4"), 
9

मैं इस पृष्ठ पर पहुंच के लिए एक रास्ता तलाश में कमांड लाइन पर कर्ल करने के लिए भाषा शीर्षलेख पास करें। आप एक पार्टी एक लाइनर में हेडर सेट करना चाहते हैं, `-v` जोड़ने के लिए देखने के लिए क्या हेडर भेजने और प्राप्त किए हैं (यदि आप यदि सर्वर अधिकार के साथ रीडायरेक्ट देख रहे हैं का उपयोग -H Accept-Language

$ curl -s -H 'Accept-Language: es' -XGET "http://www.google.com" 

<!doctype html> 
    <html itemscope="" itemtype="http://schema.org/WebPage" lang="es-419"> 
    <head> 
     <meta content="text/html; charset=UTF-8" http-equiv="Content-Type"> 
     <meta content="/logos/doodles/2016/united-states-elections-2016-4829342880235520-hp.gif" itemprop="image"> 
     <meta content="Tu voz importa. �Encuentra tu casilla y vota! g.co/elections/dondevotar #Everyonein2016 #GoogleDoodle" property="og:description"> 
     ... 
+0

उपयोगी उदाहरण के लिए निर्दिष्ट भाषा के अनुसार HTTP कोड)। –