使用 PHP 在条件下动态别名列值
Alias Column Values Dynamically on Condition with PHP
我想按条件更改 echo 上的列值。用作列值的描述。但我碰巧在我的工作中只回应了第一个满意的条款。
听说关联数组可以解决这个问题。根据我的项目条款和知识水平,我无法做到这一点。这是函数的清晰代码
function UFLAGAlias($productResult)
{
while ($uflag = oci_fetch_assoc($result))
{
$uflagc = $uflag["UFLAG"];
if($uflagc == 0)
{
$uflagc= "Not Blocked";
printf($uflagc);
}
else if($uflagc == 64)
{
$uflagc = "Blocked by system administrator";
printf($uflagc);
}
else if($uflagc == 192)
{
$uflagc = "Blocked by system administrator\nBlocked for invalid logon";
printf($uflagc);
}
else if($uflagc == 128)
{
$uflagc = "Blocked for invalid logon";
}
else
{
$uflagc = "";
}
return $uflagc;
}
}
回声
<?php
if (! empty($productResult)) {
foreach ($productResult as $key => $value) {
?>
<tr>
<td><?php UFLAGAlias($productResult[$key]); ?></td>
</tr>
<?php
]
]
?>
因此,正如我希望动态输出值一样,所有列值都设置为 "Not Blocked"。它们必须是有条件的。我相信这么多代码已经足够了,因为 rest 是私有的。
您正在尝试从密钥中获取,因为您将密钥倒置了。
您需要获取结果集,然后 - 如果需要 - 遍历生成的关联数组。
<?php
function UFLAGAlias($uflag){
$uflags = array( 0 => 'Not Blocked'
, 64 => 'Blocked by system administrator'
, 192 => 'Blocked by system administrator\nBlocked for invalid logon'
, 128 => 'Blocked for invalid logon'
);
return isset($uflags[$uflag]) ? $uflags[$uflag] : '';
}
if (! empty($productResult)) {
while( $row = oci_fetch_assoc($productResult) ):
?>
<tr>
<td><?echo UFLAGAlias($row['UFLAG']); ?></td>
</tr>
<?php
endwhile;
?>
我想按条件更改 echo 上的列值。用作列值的描述。但我碰巧在我的工作中只回应了第一个满意的条款。
听说关联数组可以解决这个问题。根据我的项目条款和知识水平,我无法做到这一点。这是函数的清晰代码
function UFLAGAlias($productResult)
{
while ($uflag = oci_fetch_assoc($result))
{
$uflagc = $uflag["UFLAG"];
if($uflagc == 0)
{
$uflagc= "Not Blocked";
printf($uflagc);
}
else if($uflagc == 64)
{
$uflagc = "Blocked by system administrator";
printf($uflagc);
}
else if($uflagc == 192)
{
$uflagc = "Blocked by system administrator\nBlocked for invalid logon";
printf($uflagc);
}
else if($uflagc == 128)
{
$uflagc = "Blocked for invalid logon";
}
else
{
$uflagc = "";
}
return $uflagc;
}
}
回声
<?php
if (! empty($productResult)) {
foreach ($productResult as $key => $value) {
?>
<tr>
<td><?php UFLAGAlias($productResult[$key]); ?></td>
</tr>
<?php
]
]
?>
因此,正如我希望动态输出值一样,所有列值都设置为 "Not Blocked"。它们必须是有条件的。我相信这么多代码已经足够了,因为 rest 是私有的。
您正在尝试从密钥中获取,因为您将密钥倒置了。
您需要获取结果集,然后 - 如果需要 - 遍历生成的关联数组。
<?php
function UFLAGAlias($uflag){
$uflags = array( 0 => 'Not Blocked'
, 64 => 'Blocked by system administrator'
, 192 => 'Blocked by system administrator\nBlocked for invalid logon'
, 128 => 'Blocked for invalid logon'
);
return isset($uflags[$uflag]) ? $uflags[$uflag] : '';
}
if (! empty($productResult)) {
while( $row = oci_fetch_assoc($productResult) ):
?>
<tr>
<td><?echo UFLAGAlias($row['UFLAG']); ?></td>
</tr>
<?php
endwhile;
?>