You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP explode()函数使用异常求助:新手遇数组输出显示Array问题

解决explode()后echo数组只显示"Array"的问题

嘿,刚接触PHP遇到这个问题太正常了,我来给你把事儿说清楚:

为什么echo $url只显示"Array"?

explode()函数执行后返回的是一个数组,但echo只能直接输出字符串类型的数据。当你用echo输出数组时,PHP会自动把数组转换成字符串"Array",这就是你看到的结果。

怎么正确查看数组内容?

如果你想看到数组里的具体元素,推荐用这两个函数:

  • print_r():专门用来打印数组结构,可读性很强
  • var_dump():不仅能显示数组元素,还能展示每个元素的数据类型和长度

把你的echo代码改成下面这样就行:

// 替换原来的echo $url;
print_r($url);

// 要是想让输出格式更美观,加上<pre>标签:
echo '<pre>';
print_r($url);
echo '</pre>';

// 或者用var_dump看更详细的信息:
var_dump($url);

额外的小建议(避免后续踩坑)

你的代码里直接取$url[1]有风险——如果用户输入的URL只有一段(比如localhost/pages),$url[1]就不存在,会抛出Undefined offset错误。可以加个判断来处理这种情况:

if (isset($_GET["url"])) { 
    $url = $_GET["url"]; 
    $url = explode("/", $url); 
    echo '<pre>';
    print_r($url);
    echo '</pre>';
    $controller = isset($url[0]) ? $url[0] : "pages"; 
    $action = isset($url[1]) ? $url[1] : "home"; 
} else { 
    $controller = "pages"; 
    $action = "home"; 
}

这样不管用户输入的URL有几段,都不会报错啦~

内容的提问来源于stack exchange,提问作者C.Letts

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 09:30:01