php
2013-02-15 92 views -1 likes 
-1

我已经创建了一个简单的函数,不知道我是否应该使用开关/外壳进行评估,但是在这里。它应该获取该字段的值并确定应该使用哪个图像,然后将图像路径重新映射到img标记。我有我的img标签下面调用该函数,任何意见我做错了什么?动态定义图像的路径

非常感谢

function imgtype ($parameter) { 
    if ($paramater) === "T") {$imgsrc = 'images/onetick.gif'; return $imgsrc;} 
    elseif ($parameter === "TT") {$imgsrc = 'images/twotick.gif'; return $imgsrc;} 
    elseif ($parameter === "X") {$imgsrc = 'images/cross.gif'; return $imgsrc;} 
} 

这是调用该函数的标签

<img width="29" height="19" src="<?php imgtype($myRecord->getField('fieldvalue')); ?>"> 
+0

您未使用的返回值。 '<?php echo imgtype(...)'。另外,由于'imgtype'不返回*类型*,而是*相对URL *,所以应该重命名它。 – Jon 2013-02-15 10:51:53

+0

您需要在功能或回声结果中回显结果 – 2013-02-15 10:57:17

+0

我现在将功能名称更改为imgURL - 使之更有意义 – JK36 2013-02-15 11:02:28

回答

1

你要打印出结果:

<img width="29" height="19" src="<?php echo imgtype($myRecord->getField('fieldvalue')); ?>"> 

你正在做的很好用ifelse声明。假设您比switch稍快,但如果您使用的是===而不是==,那么您应该更快。

Performance info.

0

用途呼应调用的函数:

echo '<img width="29" height="19" src="'.imgtype($myRecord->getField('fieldvalue')).'">'; 

还是在功能上它添加

function imgtype ($parameter) { 
    if ($paramater) === "T") $imgsrc = 'images/onetick.gif'; 
    elseif ($parameter === "TT") $imgsrc = 'images/twotick.gif'; 
    elseif ($parameter === "X") $imgsrc = 'images/cross.gif'; 

return '<img width="29" height="19" src="'.$imgsrc.'">'; 
} 
0

你应该echo返回值是这样的:

echo imgtype($myRecord->getField('fieldvalue')); 

,或者你可以在你的函数echo

function imgtype ($parameter) { 
    if ($paramater) === "T") {$imgsrc = 'images/onetick.gif'; echo $imgsrc;} 
    elseif ($parameter === "TT") {$imgsrc = 'images/twotick.gif'; echo $imgsrc;} 
    elseif ($parameter === "X") {$imgsrc = 'images/cross.gif'; echo $imgsrc;} 
} 
相关问题