duankekan9269 2016-01-05 19:01
浏览 128
已采纳

Laravel 5.1 - 视图中的未定义变量

I have this controller:

<?php

namespace App\Http\Controllers;

class TestController extends Controller
{
    public function index()
    {
        $html = file_get_html('http://www.somesite.com/');
        $html->getElementsByTagName('article');
        $anc = $html->find('a');

        return view('welcome', compact($anc));
    }
}

and this view :

<!DOCTYPE html>
<html>
    <head>
        <title>Laravel</title>
    </head>
    <body>
        <div class="container">
            <div class="content">
                @foreach($anc as $item)
                    {{ $item }} <br>
                @endforeach
            </div>
        </div>
    </body>
</html>

Very simple and nothing special. just getting contents of a url and parsing it with a simple library and returning variable anc to the welcome view and then in the view i'm trying to echo each element. it gives me:

ErrorException in 051dd3929cf86b31dbaacb340018a3c5 line 9:
Undefined variable: anc (View: C:\Users\User\Desktop\Projectesources\views\welcome.blade.php)
  • 写回答

2条回答 默认 最新

  • dongxun7962 2016-01-05 19:07
    关注

    You're using compact() improperly. Correct usage is this:

    return view('welcome', compact('anc'));
    

    Pass the names of the variables you want compacted, as strings.

    PHP doc: http://php.net/manual/en/function.compact.php

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题
  • ¥15 Python时间序列如何拟合疏系数模型
  • ¥15 求学软件的前人们指明方向🥺
  • ¥50 如何增强飞上天的树莓派的热点信号强度,以使得笔记本可以在地面实现远程桌面连接