有什么方法可以从 phing 临时任务中获取返回值吗?
例如,我正在尝试从文件中的 JSON 字符串中获取版本号,如下所示:
<target name="get-app-version">
<adhoc-task name="appversion" ><![CDATA[
class AppversionTask extends Task {
private $version;
public function getVersion() {
return $this->version;
}
function main() {
$manifest = file_get_contents("manifest.json");
$manifest_json = json_decode($manifest);
$version = $manifest_json->version;
$this->log("App version: " . $version);
$this->version = $version;
}
}
]]></adhoc-task>
<appversion output="version" />
<echo message="${version}" />
</target>
我只能找到有关设置值的文档,但找不到有关获取值的文档。然而,adhoc typdef task似乎显示了 get 语法,所以我想知道是否有某种方法可以做到这一点。
最佳答案
我不确定我是否完全理解。听起来像,而不是设置
$this->版本
你应该调用
$this->project->setProperty('version', $version);
这会将“版本”属性添加到您的项目实例。您不需要为您的任务设置属性,除非说您以后想要更改项目中设置的属性名称(从“版本”到其他属性)。
`
<adhoc-task name="appversion" ><![CDATA[
class AppversionTask extends Task {
function main() {
$manifest = file_get_contents("manifest.json");
$manifest_json = json_decode($manifest);
$version = $manifest_json->version;
$this->log("App version: " . $version);
$this->project->setProperty('version', $version);
}
}
]]></adhoc-task>
<appversion />
<!-- The version property should now be set -->
<echo message="${version}" />
`
关于php - 如何从 phing 临时任务返回值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16745299/