jeudi 18 juillet 2019

How to Fix class not found in Laravel

In Laravel I need to communicate to a 3rd party API. Thay have given me some PHP implementation (class) which I can use to connect and communicate with their API. But when I try this as a class in a subfolder of the App folder and add this to my controller, I get a class not found error.

I have added a folder 'Qenner' (the provider of the API) in the App folder. And copied their classes in there. In my controller I'm using these classes and add a code sample, like they send it to me.

Controller code (API-KEY is replaced with the actual key):

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Qenner\Search;
use QennerSearch\ServiceClient;

class TestController extends Controller
{
    public function index() {
        $search = new Search('https://search.qenner.com', 'API-KEY', true, 'nl-NL');

$response = $search->getCriteria([], ['Country'], []);

if (!$response->isError()) {
  $criterionSets = $response->getCriterionSets();
  $countryCriterionSet = criterionSets[0];
  $countries = $countryCriterionSet->getCriteria();
  $resultCount = $response->getResultCount();
}
dd($response);
    }

Search.php in Qenner folder:

/**
 * @file
 * Contains QennerSearch\Search.
 */

namespace QennerSearch;

use QennerSearch\model\messages\CriterionTypesResponse;
use QennerSearch\model\messages\CriteriaRequest;
use QennerSearch\model\messages\CriteriaResponse;
use QennerSearch\model\messages\ErrorResponse;
use QennerSearch\model\messages\SearchRequest;
use QennerSearch\model\messages\SearchResponse;
use QennerSearch\model\messages\PriceRequest;
use QennerSearch\model\messages\PriceResponse;
use QennerSearch\model\messages\AccommodationInfoRequest;
use QennerSearch\model\messages\AccommodationInfoResponse;
use QennerSearch\model\messages\AutoCompleteRequest;
use QennerSearch\model\messages\AutoCompleteResponse;


/**
 * Class Search, using ServiceClient to communicate, implementing the SearchInterface
 *
 * @package QennerSearch
 */
class Search extends ServiceClient implements SearchInterface {
.....

The folder has a ServiceClient.php

I get this error:

Class 'QennerSearch\ServiceClient' not found

While I expected a dump of the output



via Chebli Mohamed

Aucun commentaire:

Enregistrer un commentaire