मैं नहीं समझ सकता क्यों PhpStorm मुझे इस विधि से अधिक निम्न चेतावनी PHPDoc comment does not match function or method signature
देता है:क्यों मैं इस कोड पर PhpStorm में एक phpdoc चेतावनी मिलता है
/**
* Create a new instance of the class
* @param string $classname Class to instantiate
* @return object the instance
* @throw FactoryException If the class is not instantiable
*/
private function newInstance($classname) {
$reflectionClass = new \ReflectionClass($classname);
if (! $reflectionClass->isInstantiable()) {
throw new FactoryException("The class $classname is not instantiable.");
}
return new $classname;
}
चेतावनी, बहुत विशिष्ट नहीं है मैंने रिटर्न प्रकार को "ऑब्जेक्ट", "मिश्रित" या यहां तक कि "int" (कोशिश करने के लिए) को बदलने जैसी कई चीजों की कोशिश की लेकिन यह नहीं बदला। यहां क्या समस्या है ?
मैंने '@ फेंकने की कोशिश की लेकिन चेतावनी अभी भी वहां है (मैंने वही किया जैसा आपने टाइपिंग के साथ किया था/**' लेकिन ऑटो-जेनरेट किए गए डॉकब्लॉक को भी चेतावनी थी)। असल में मेरे पास phpStorm 4.0 का बीटा संस्करण है, शायद यह सिर्फ एक बग है? –
फंकी, हाँ मैं 4.0 का भी उपयोग कर रहा हूं। – MetalFrog
@Matthieu 1) यह निश्चित रूप से ** ** ** होना चाहिए ** इस संबंध में वर्तमान v4 ईएपी बिल्ड (116.101) के साथ कुछ समस्याएं हैं (मैं वही हूं)। जो मैं देखता हूं (आपकी टिप्पणियों के आधार पर) यह फ़ंक्शन कक्षा में है जो किसी अन्य वर्ग या कार्यान्वयन इंटरफ़ेस को बढ़ाता है और यह फ़ंक्शन पैरेंट क्लास/इंटरफ़ेस में ओवरराइड करता है। यदि ऐसा है - तो कृपया उनके लिए PHPDoc ब्लॉक की तुलना करें - भले ही 1 वर्ण अलग है (उदाहरण के लिए "नया उदाहरण बनाएं ..." बनाम "नया उदाहरण बनाएं ...") PhpStorm ऐसी त्रुटि की रिपोर्ट करेगा। – LazyOne