2009-07-14 14 views
9

मैं मौसम खोजने का प्रयास कर रहा हूं, मैं यह कर सकता हूं या नहीं। मेरे पास टेम्पलेट नामक एक कक्षा है। और मैं उस वर्ग की कार्यक्षमता को किसी अन्य फ़ाइल में विस्तारित करना चाहता हूं, लेकिन मैं नाम बदलना नहीं चाहता हूं।PHP में आप एक ही नाम के लिए कक्षा का विस्तार कर सकते हैं?

मैं

class template extends template 
{ 
    // code here 
    function foo() 
    { 

    } 
} 

के रूप में यह घोषणा करते हैं या मैं सिर्फ इस तरह यह घोषणा करते हैं?

class template 
{ 
    // write function 
    function foo() 
    { 

    } 
} 

उत्तर

-3

आप classkit

+0

इस मामले में कोडिंग सुविधाएं बदलती हैं, यह ऐसा करने की अनुमति देती है, लेकिन सही और आसान तरीका नहीं है। एक सॉफ्टवेयर को अपग्रेड करना चाहते हैं सीधे कक्षा के माध्यम से होना चाहिए। –

1

आप मूल वर्ग की एक विधि/संपत्ति का उपयोग करने के आप इसे विस्तार कर सकते हैं, लेकिन आप एक अलग नाम का उपयोग करना चाहिए चाहते हैं तो, अन्यथा आप वर्ग redeclaring बारे में एक त्रुटि मिल जाएगा।

मूल रूप से

:

class template {} 

/* both fail with "cannot redeclare class template */ 

class template extends template {} 

class template {} 
+1

ओह ठीक है। धन्यवाद –

0

मैं यकीन है कि आप नहीं कर सकते हैं। मैं तुम क्या सुझाव है निम्नलिखित:

class Template extends TemplateBase 
{ 
    // code 
} 

पर और अधिक पढ़ें: http://www.php.net/manual/en/language.oop5.php

21

सिर्फ अगर माता पिता वर्ग एक और नाम स्थान में है की जाँच कर सकते हैं।

use SomeNamespace\Template as BaseTemplate; 

class Template extends BaseTemplate 
{ 
    //... 
} 
संबंधित मुद्दे