如何基于JSON响应在PHP中实现if-else逻辑,显示自定义状态文本
实现代理状态的自定义文本与样式展示
你可以通过条件判断来根据API返回的isProxy值,输出对应的自定义文本和样式。同时注意修正原代码里的语法错误(API请求的引号未闭合),以下是完整的实现方案:
修正后的完整代码
<?php // 修正引号闭合问题,确保API请求正常执行 $data = file_get_contents("https://api.ip2proxy.com/?ip=$user_ip"); $json = json_decode($data, true); // 初始化状态文本和颜色变量 $statusText = ''; $statusColor = ''; // 根据代理状态设置对应内容 if ($json['isProxy'] === 'yes') { $statusText = '您已处于保护状态'; $statusColor = 'green'; } else { $statusText = '您未处于保护状态'; $statusColor = 'red'; } ?> <li>Your Status: <span style="color:<?php echo $statusColor; ?>"><?php echo $statusText; ?></span> </li>
关键说明
- 语法修正:原代码中
file_get_contents的URL字符串末尾缺少闭合双引号,已补上确保请求正常。 - 条件逻辑:通过
if-else判断isProxy的返回值,分别设置对应的提示文本和字体颜色。 - 兼容处理:如果API返回的
isProxy存在大小写差异(比如Yes/NO),可以统一转小写后判断,避免匹配失败:
if (strtolower($json['isProxy']) === 'yes') { // 逻辑不变 }
内容的提问来源于stack exchange,提问作者Shahid Malla
相关产品推荐
相关产品推荐

