मैं अपनी PHP फ़ाइल में कक्षाओं को स्वत: लोड कर रहा हूं, और स्वत: लोड बिना किसी समस्या के फ़ाइल का पता लगा सकता है और इसकी आवश्यकता कर सकता है। हालांकि, जब मैं अपने कोड में कक्षा का उपयोग करने के लिए जाता हूं, तो मुझे "कक्षा नहीं मिली" त्रुटि मिलती है। मुझे समझ में नहीं आता कि ऐसा क्यों हो रहा है, क्योंकि बिना किसी समस्या के ऑटोलैडर में क्लास फ़ाइल स्थित और आवश्यक हो सकती है। किसी भी मदद की सराहना की जाती है
require "../square-php-sdk-master/autoload.php";
$body = new \SquareConnect\Models\CreatePaymentRequest()
त्रुटि:
Fatal error: Uncaught Error: Class 'SquareConnect\Models\CreatePaymentRequest' not found in C:\wamp64\www\testSite.test\include\order-cart.inc.php
2 जवाब
ऑटोलोडेड द्वारा लोड की जा रही फाइलों के नामस्थान की जांच करें। स्पष्ट रूप से, ऑटोलैडर उन्हें ढूंढने में सक्षम है, लेकिन वे SquareConnect\Models के अलावा किसी अन्य नामस्थान में लोड किए गए हैं...
आपको लोड की गई फ़ाइल के शीर्ष पर नाम स्थान मिलेगा, सुनिश्चित करें कि यह कहता है:
namespace SquareConnect\Models
बहुत सारे स्क्वायर एपीआई में, वे नेमस्पेस \ स्क्वायर का उपयोग करते हैं न कि \ स्क्वायर कनेक्ट ताकि यह भी जांचने के लिए कुछ है
हो सकता है कि आप प्लग-इन फ़ाइल में नियमित ( php) के बजाय एक संक्षिप्त php टैग () का उपयोग कर रहे हों, और इसे अक्षम किया जा सकता है
<?
में बदलो
<?php
या फ़ाइल में नाम स्थान निर्दिष्ट नहीं किया जा सकता है
<?php
namespace SquareConnect\Models
class CreatePaymentRequest(){
...
}
संबंधित सवाल
नए सवाल
php
PHP एक व्यापक रूप से उपयोग किया जाता है, उच्च-स्तरीय, गतिशील, वस्तु-उन्मुख, और व्याख्या की गई स्क्रिप्टिंग भाषा मुख्य रूप से सर्वर-साइड वेब विकास के लिए डिज़ाइन की गई है। PHP भाषा के बारे में सवालों के लिए इस्तेमाल किया।