我想要实现的是自动化帮助程序加载脚本和CSS。 所以基本上这个想法是在每个帮助器上都有一个函数,它正在加载专用于帮助器的脚本/样式。 我想这可以通过一个控制助手来实现,它正在查询所有活动助手,然后执行脚本/样式加载功能。
我在文档中找不到的是:
答案 0 :(得分:2)
您可以使用(HelperRegistry
)查询$ awk '
FNR==1 {for(i=2;i<=NF;i++) {headers[i]=$i}}
FNR>1 {
if (maxrow<FNR) { maxrow=FNR}
rowheaders[FNR]=$1;
for(i=2;i<=NF;i++) {
if (maxvalue<$i) {maxvalue=$i}
if(!values[$1,$i]) {
values[$1,$i]=headers[i]
} else {
values[$1,$i]=values[$1,$i] "," headers[i]
}
}
}
END { for (i=2;i<=maxrow;i++) { for (j=0;j<=maxvalue;j++) { if (values[rowheaders[i],j] && maxlen<length(values[rowheaders[i],j])) { maxlen=length(values[rowheaders[i],j])}}}
printf("%" maxlen "s","ID"); for (i=0;i<=maxvalue;i++) { printf("%s%" maxlen "s",OFS,i)}; printf("\n")
for (i=2;i<=maxrow;i++) {
printf ("%" maxlen "s",rowheaders[i])
for (j=0;j<=maxvalue;j++) {
if (!values[rowheaders[i],j]) {
printf("%s%" maxlen "s",OFS," ")
}
else {
printf("%s%" maxlen "s",OFS,values[rowheaders[i],j])
}
}
printf("\n")
}
}' inputfile
ID 0 1 2 3 4 5 6
CNV1 S2,S4 S1,S3,S5
CNV2 S5 S2,S3,S4 S1
CNV3 S2 S1,S4 S3 S5
的{{3}}:
View
拥有注册表后,您可以使用View::helpers
获取已加载帮助程序的名称,并使用HelperRegistry::loaded()
检索它们:
$this->_View->helpers();
免责声明:上述代码未经过测试。