Php 根据阵列设置回波格式
我有这段代码,可以找到谁登录并显示用户名及其成员状态Php 根据阵列设置回波格式,php,Php,我有这段代码,可以找到谁登录并显示用户名及其成员状态 while ($row = mysqli_fetch_assoc($whoisloggedin)) { $usersArray = $row['status']; $usersArray2 = $row['username']; echo '<pre>'; echo $usersArray," ",$usersArray2; echo
while ($row = mysqli_fetch_assoc($whoisloggedin)) {
$usersArray = $row['status'];
$usersArray2 = $row['username'];
echo '<pre>';
echo $usersArray," ",$usersArray2;
echo '</pre>';
}
while($row=mysqli\u fetch\u assoc($whoisloggedin)){
$usersArray=$row['status'];
$usersArray2=$row['username'];
回声';
while ($row = mysqli_fetch_assoc($whoisloggedin) ) {
$usersArray = $row['status'];
$usersArray2 = $row['username'];
print '<pre>';
switch( $usersArray ) {
case 'something':
$color = "red";
break;
case 'somethingelse':
$color = "blue"
break;
default:
$color = "white";
break;
}
print '<span style="color: '.$color.'">'.$usersArray.' '.$usersArray2.'</span>';
print '</pre>'
}
echo$usersArray,“,$usersArray 2;
回声';
while ($row = mysqli_fetch_assoc($whoisloggedin) ) {
$usersArray = $row['status'];
$usersArray2 = $row['username'];
print '<pre>';
switch( $usersArray ) {
case 'something':
$color = "red";
break;
case 'somethingelse':
$color = "blue"
break;
default:
$color = "white";
break;
}
print '<span style="color: '.$color.'">'.$usersArray.' '.$usersArray2.'</span>';
print '</pre>'
}
}
现在显示了4个用户名,因为有4个用户登录,我想知道是否可以更改文本颜色。所以它现在可能会说“Admin Kenazz”或“VIP ryemck”,我想知道我是否能做到“Admin”是红色,“VIP”是金色等等
I假设这是HTML输出,而不是控制台,您可以尝试以下类似操作:
print '<span class="'.$color.'">';
使用类似于的CSS行
while ($row = mysqli_fetch_assoc($whoisloggedin)) {
$usersArray = $row['status'];
$usersArray2 = $row['username'];
if ($usersArray == 'Admin') {
$colour = 'red';
}
else if ($usersArray == 'VIP') {
$colour = 'gold';
}
echo '<p style="color: '.$colour.'">'.$usersArray.' '.$usersArray2.'</p>';
}
编辑:根据@David Jones solution合并$color变量尝试应用检查
$rename=array("Admin"=>"<span style='color:red'>"
,"VIP"=>"<span style='color:yellow'>");
while ($row = mysqli_fetch_assoc($whoisloggedin)) {
$usersArray = $row['status'];
$usersArray2 = $row['username'];
echo '<pre>';
echo $rename[$usersArray].$usersArray" ".$usersArray2."</span>";
echo '</pre>';
}
if($row['somthing']=='Admin'){
回显“.$row['username']”;
while ($row = mysqli_fetch_assoc($whoisloggedin) ) {
$usersArray = $row['status'];
$usersArray2 = $row['username'];
print '<pre>';
switch( $usersArray ) {
case 'something':
$color = "red";
break;
case 'somethingelse':
$color = "blue"
break;
default:
$color = "white";
break;
}
print '<span style="color: '.$color.'">'.$usersArray.' '.$usersArray2.'</span>';
print '</pre>'
}
}
else if($row['somthing']=='VIP'){
回显“.$row['username']”;
while ($row = mysqli_fetch_assoc($whoisloggedin) ) {
$usersArray = $row['status'];
$usersArray2 = $row['username'];
print '<pre>';
switch( $usersArray ) {
case 'something':
$color = "red";
break;
case 'somethingelse':
$color = "blue"
break;
default:
$color = "white";
break;
}
print '<span style="color: '.$color.'">'.$usersArray.' '.$usersArray2.'</span>';
print '</pre>'
}
}
否则{
回显“.$row['username']”;
while ($row = mysqli_fetch_assoc($whoisloggedin) ) {
$usersArray = $row['status'];
$usersArray2 = $row['username'];
print '<pre>';
switch( $usersArray ) {
case 'something':
$color = "red";
break;
case 'somethingelse':
$color = "blue"
break;
default:
$color = "white";
break;
}
print '<span style="color: '.$color.'">'.$usersArray.' '.$usersArray2.'</span>';
print '</pre>'
}
}
等等……你可以这样做
$find=array("Admin","VIP");
$replace=array("<span style='color:red'>Admin"
,"<span style='color:yellow'>VIP");
while ($row = mysqli_fetch_assoc($whoisloggedin)) {
$usersArray = $row['status'];
$usersArray2 = $row['username'];
echo '<pre>';
echo str_replace($find,$replace,$usersArray)." ".$usersArray2."</span>";
echo '</pre>';
}
while($row=mysqli\u fetch\u assoc($whoisloggedin)){
$usersArray=$row['status'];
$usersArray2=$row['username'];
如果($usersArray=='Admin'){
$color='red';
}
else if($usersArray==“VIP”){
$COLOR='gold';
}
echo''.$usersArray.'.$usersArray2.
';
while ($row = mysqli_fetch_assoc($whoisloggedin) ) {
$usersArray = $row['status'];
$usersArray2 = $row['username'];
print '<pre>';
switch( $usersArray ) {
case 'something':
$color = "red";
break;
case 'somethingelse':
$color = "blue"
break;
default:
$color = "white";
break;
}
print '<span style="color: '.$color.'">'.$usersArray.' '.$usersArray2.'</span>';
print '</pre>'
}
}
最简单的方法是使用替换函数或命名数组键:
$rename=array(“Admin”=>“
,“VIP”=>”);
while($row=mysqli\u fetch\u assoc($whoisloggedin)){
$usersArray=$row['status'];
$usersArray2=$row['username'];
回声';
while ($row = mysqli_fetch_assoc($whoisloggedin) ) {
$usersArray = $row['status'];
$usersArray2 = $row['username'];
print '<pre>';
switch( $usersArray ) {
case 'something':
$color = "red";
break;
case 'somethingelse':
$color = "blue"
break;
default:
$color = "white";
break;
}
print '<span style="color: '.$color.'">'.$usersArray.' '.$usersArray2.'</span>';
print '</pre>'
}
echo$rename[$usersArray]。$usersArray.“$usersArray 2.”;
回声';
while ($row = mysqli_fetch_assoc($whoisloggedin) ) {
$usersArray = $row['status'];
$usersArray2 = $row['username'];
print '<pre>';
switch( $usersArray ) {
case 'something':
$color = "red";
break;
case 'somethingelse':
$color = "blue"
break;
default:
$color = "white";
break;
}
print '<span style="color: '.$color.'">'.$usersArray.' '.$usersArray2.'</span>';
print '</pre>'
}
}
现在,第二个变体使用replace函数
$find=array(“Admin”、“VIP”);
$replace=array(“Admin”
“VIP”);
while($row=mysqli\u fetch\u assoc($whoisloggedin)){
$usersArray=$row['status'];
$usersArray2=$row['username'];
回声';
while ($row = mysqli_fetch_assoc($whoisloggedin) ) {
$usersArray = $row['status'];
$usersArray2 = $row['username'];
print '<pre>';
switch( $usersArray ) {
case 'something':
$color = "red";
break;
case 'somethingelse':
$color = "blue"
break;
default:
$color = "white";
break;
}
print '<span style="color: '.$color.'">'.$usersArray.' '.$usersArray2.'</span>';
print '</pre>'
}
echo str_replace($find,$replace,$usersArray)。“.$usersArray2.”;
回声';
while ($row = mysqli_fetch_assoc($whoisloggedin) ) {
$usersArray = $row['status'];
$usersArray2 = $row['username'];
print '<pre>';
switch( $usersArray ) {
case 'something':
$color = "red";
break;
case 'somethingelse':
$color = "blue"
break;
default:
$color = "white";
break;
}
print '<span style="color: '.$color.'">'.$usersArray.' '.$usersArray2.'</span>';
print '</pre>'
}
}
您可以这样做…您可以逐个打印数组元素并将样式应用于特定元素。如果
。否则
会变得非常乏味,速度非常快,开关
在这里可能会更好。此外,您没有默认案例。否则,固溶体!这是非常接近难以维持只有两个案件!请查看my或@David Jones的答案,以获得更具可扩展性的解决方案。问题中包含“管理员是红色的,vip是金色的,等等”,这表明情况远不止两个。在这种情况下,此代码比其他代码更具可读性answers@Kybored我不同意-切换
是一种更好的构造方法,适用于更多情况。如下所述,我认为如果
…否则
不是最佳选择,因为再过几次之后,它将变得无法维护。不过,$color
变量使用得很好!另外,缺少一个默认案例。@hexblot感谢您的贡献:)但只会有1个,可能还有2个cases@hexblot是的,切换也是一种很好的方法,尽管如果有更多的切换,我会为每个切换创建一个css类,这样就不需要if语句或切换了。