所以我使用的是更具體的Elasticsearch,它可以通過作曲者使用。它是5.0版本。我試圖在一個類中的私有函數內部建立客戶端連接。基本上我想要的是具有2個私有函數的1個類。第一個專用功能會使用創建客戶端連接:PHP使用私有函數內的另一個類的命名空間
$hosts = ['host' => 'http://censored'];
$clientBuilder = ClientBuilder::create();
$clientBuilder->setHosts($hosts);
$clientBuilder->setSerializer('\Elasticsearch\Serializers\EverythingToJSONSerializer');
$client = $clientBuilder->build();
$searchParams = ['index' => 'main'];
心靈您$ searchparams和$客戶端必須是由下面的提到的第二私有函數訪問。
第二私有函數將採取從公共職能類型和查詢,並使用$客戶端和$ searchparam發起API請求Elasticsearch
摘要:公共職能將從另一個文件被調用。要使用它,它需要傳遞一個類型($ type)和查詢($ query),並將其傳遞給第二個私有函數。第二個私有函數將向Elasticsearch發起API請求,並將結果返回給公共函數,然後公共函數將結果回送給用戶。
我相信這是可能的,但我不知道如何調用或使用私人函數中的另一個名稱空間。將它放入私有函數並自動加載Elasticsearch會導致ClientBuilder無法找到。
預先感謝您,並對長期發帖感到抱歉。