2012-01-04 11 views
7

एक MediaWiki त्वचा के लिए, मैं कोडहियरडॉक वाक्य-विन्यास त्रुटि

private $_sideboxf = <<<EOD 
     <h3>%s</h3> 
     <ul class="submenu"> 
      %s 
     </ul> 
EOD; 

का निम्न भाग त्रुटि syntax error, unexpected T_START_HEREDOC है के लिए एक त्रुटि हो रही है। मैंने वाक्यविन्यास की जांच की है और मुझे नहीं पता कि क्या गलत है। यहां तक ​​कि कोड के लेखक को समझ में नहीं आता है कि जब मैंने गिट पर पूछा तो मुझे यह त्रुटि क्यों मिल रही है।

संपादित करें: कक्षा परिभाषा

class SkinTemplate extends QuickTemplate 
{ 
    private $_sideboxf = <<<EOD 
    <h3>%s</h3> 
    <ul class="submenu"> 
     %s 
    </ul> 
EOD; 
// Some public function 
} // End of Class 
+1

[Heredocs जाहिरा तौर पर कक्षाओं में काम नहीं करते।] (Http://codepad.org/O4zy120L) मुझे लगता है कि एकल कोट्स का उपयोग करें। – Ryan

+0

इस कथन से पहले आप क्या कर रहे हैं? –

+0

@minitech: मुझे Google मानचित्र अपग्रेड के लिए इस आवश्यक बुराई का उपयोग करना पड़ा है। एक वर्ग के भीतर जेएस कोड डालना बुरा है, लेकिन यह ओओपी के लाभ प्रदान करता है जिसमें जेएस अब केंद्रीकृत स्थान पर है। –

उत्तर

7

PHP5.3.0 + हियरडॉक का उपयोग कर वर्ग चर आरंभ के लिए आवश्यक है, अपने कोड PHP में ठीक काम करता है 5.3

+0

मीडियाविकी 1.17.0 में PHP संस्करण 5.2.9 – yayu

+1

है यह मुद्दा हो गया है, ओपी में कोड ऐसा लगता है कि यह संकलित होगा। 5.3.x इतने लंबे समय तक, दूसरों को नहीं सोचना मुश्किल है। –

+0

मैंने अभी अपने साझा होस्टिंग प्रदाता को बुलाया है और उन्होंने मुझे $ 40/mo के लिए एक वीपीएस खाता खरीदने के लिए कहा है, क्योंकि जब तक एक सिद्ध स्थिर संस्करण खुद को स्थापित नहीं करता तब तक उनके पास कोई अपग्रेड योजना नहीं थी। मुझे लगता है कि मैं आगे बढ़ रहा हूँ। – yayu

1

हियरडॉक के अंत टैग वास्तव में इंडेंट है?

कि बाहर अच्छी तरह से काम नहीं करता है IIRC ...

4

आप वास्तव में सदस्य चर आरंभीकरण के दौरान उस हियरडॉक करना चाहते हैं? हो सकता है कि लेने के लिए एक बेहतर रास्ता की तरह कुछ होगा:

class MyClass 
{ 
    public function getSideBoxF() 
    { 
     return <<<EOD 
      Stuff goes here... 
EOD; 

    } 
} 

भी ध्यान रखें कि समापन हियरडॉक बाईं मार्जिन के खिलाफ फ्लश होना चाहिए, मैं तुम्हें दिखाने के लिए यह कैसा दिखना चाहिए वर्ग आवरण गयी।

संबंधित मुद्दे