2011-10-04 32 views
3

可以將Zorba XQuery處理器PHP API綁定到xquery中聲明爲external的變量嗎?如何在PHP中綁定Zorba中的XQuery外部變量?

例如,xquery中的這一行將綁定到名爲$foo的外部變量;

declare variable $foo as xs:string external; 

但我不能找到左巴PHP API文檔中展示瞭如何做綁定的PHP的一部分,使PHP變量$foo變爲綁定到XQuery的變量$foo一個例子。

可以這樣做嗎?

+0

看看的'set_variable()'PHP的API函數。我不知道它專門爲PHP,但C API有這個。 – hakre

回答

0

你可以做到以下幾點:

$query = $this->zorba->compileQuery("declare variable $i external; $i + 1"); 
$dctx = $this->zorba->getDynamicContext(); 

$param = $this->zorba->compileQuery("."); 
$itemFactory = $this->zorba->getItemFactory(); 
$value = $itemFactory->createString("1"); 

$param->getDynamicContext()->setContextItem($value); 

$dctx->setVariable("", "i", $param->iterator()); 

這是否幫助?