2012-07-12 18 views
7

मैं एक साझा होस्ट (fasthostingdirect) का उपयोग कर रहा हूं और किसी कारण से उनके पास यह ध्वज डिफ़ॉल्ट रूप से बंद हो गया है। इसका मतलब है कि मैं PHP कमांड लाइन पैरामीटर तक पहुंचने में असमर्थ हूं ... जब तक मैं (= --no-php-info) php.exe के बाद ध्वज का उपयोग नहीं करता।PHP में register_argc_argv को ओवरराइड कैसे करें?

ने मेरी PHP फ़ाइल में ini_set('register_argc_argv', 1) को आजमाया है लेकिन इसका कोई प्रभाव नहीं है। मुझे लगता है कि यह होस्टिंग प्रदाता की क्लैंपेड डाउन प्रकृति के कारण है, हालांकि वे -n विकल्प को नहीं रोकते हैं - हालांकि इसका उपयोग करने के अन्य प्रभावों के बारे में सुनिश्चित नहीं हैं। क्या किसी के पास कोई बेहतर सुझाव है?

+0

बस मेजबान को ले जाएं। अपनी सेटिंग्स को ओवरराइड करने का प्रयास करना बंद करने का एक शानदार तरीका है। –

उत्तर

6

ini_set('register_argc_argv', 1) काम नहीं करता है क्योंकि कोड निष्पादित होने तक, वे पहले ही पंजीकृत हो चुके हैं (या नहीं)।

ऐसा लगता है आप php सीधे चलाने के लिए, अपने स्वयं के php.ini फ़ाइल को कॉपी करें और पारित करने में सक्षम हैं:

php -c yourphp.ini 
2

एक पूरी नई INI फ़ाइल बनाने के लिए कोई ज़रूरत नहीं, बस -d ध्वज का उपयोग

php -d register_argc_argv=1 myscript.php 
संबंधित मुद्दे