我正在使用 Symfony NelmioSolariumBundle 并且需要进行 Solr 完整数据导入,有 Solarium 这种类型的命令吗?
如果否,如何通过 Solarium API 执行自定义数据导入请求:
/core/dataimport?command=full-import
找到了方法:
use Solarium\Core\Client\ClientInterface,
Solarium\Core\Client\Request;
class IndexService
{
/** @var ClientInterface */
private $client;
/**
* @param ClientInterface $client
*/
public function __construct(ClientInterface $client)
{
$this->client = $client;
}
public function triggerFullDataImport()
{
$request = new Request();
$request->setHandler('dataimport');
$request->addParam('command', 'full-import');
$this->client->executeRequest($request);
}
}
您不需要任何魔法来做到这一点,只需使用file_get_contents("http://....")
. 如果 fopen 包装器被禁用(它们通常不是),您可以使用 cURL 模块(如果安装了它来执行相同操作)。