Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/249.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用视图而不使用PHP';s";“紧凑型”;拉维函数_Php_Laravel_Function_Laravel 5 - Fatal编程技术网

如何使用视图而不使用PHP';s";“紧凑型”;拉维函数

如何使用视图而不使用PHP';s";“紧凑型”;拉维函数,php,laravel,function,laravel-5,Php,Laravel,Function,Laravel 5,我正在使用laravel从数据库中获取数据,并将该数据或数据数组存储到变量中,比如$tasks存储数据库中tasks表的数据,直到一切正常,但是在处理$task变量的过程中,是否需要使用“compact”函数 有人能解释一下吗 Route::get('/test', function () { $data = [ 'name' => 'Vrushal', 'last' => 'Raut',

我正在使用laravel从数据库中获取数据,并将该数据或数据数组存储到变量中,比如$tasks存储数据库中tasks表的数据,直到一切正常,但是在处理$task变量的过程中,是否需要使用“compact”函数

有人能解释一下吗

Route::get('/test', function () {

$data   =   [
                'name'  =>  'Vrushal',
                'last'  =>  'Raut',
                'tasks' =>  [
                                'Programming',
                                'UI/UX Developement',
                                'Cloud Expert'
                            ]
            ];
            //return view('templates/test', compact($data)); //NOT WORKING
            //return view('templates/test', $data); // ITS WORKING
            return View::make('templates/test',$data); // ITS WORKING
}); 
Route::get('/tasks', function(){

$tasks  =   DB::table('tasks')->get();

return view('templates/tasks', compact('tasks')); // ITS WORKING
//return View::make('templates/test',$tasks); // NOT WORKING
});
以及与数据库plz解释这一点

Route::get('/test', function () {

$data   =   [
                'name'  =>  'Vrushal',
                'last'  =>  'Raut',
                'tasks' =>  [
                                'Programming',
                                'UI/UX Developement',
                                'Cloud Expert'
                            ]
            ];
            //return view('templates/test', compact($data)); //NOT WORKING
            //return view('templates/test', $data); // ITS WORKING
            return View::make('templates/test',$data); // ITS WORKING
}); 
Route::get('/tasks', function(){

$tasks  =   DB::table('tasks')->get();

return view('templates/tasks', compact('tasks')); // ITS WORKING
//return View::make('templates/test',$tasks); // NOT WORKING
});
提前谢谢

compact('data')
['data'=>$data]
相同,因此要能够访问
Vrushal
值,您需要在视图中执行以下操作:

{{ $data['name'] }}
执行此操作时:

 View::make('templates/test', $data);
您可以通过以下方式获得
Vrushal
值:

{{ $name }}
//返回视图('templates/test',compact($data))//不起作用
它不起作用,因为紧凑型元素不需要美元符号。应该是这样的:

returnview('templates.test',compact('data')
其他方式:


返回视图('templates.test')->带有('variable',$data)
并使用
$variable[]

compact在视图中访问此文件-创建包含变量及其值的数组 手册


结果

Array
(
    [event] => SIGGRAPH
    [city] => San Francisco
    [state] => CA
)
Array
(
    [event] => SIGGRAPH
    [city] => San Francisco
    [state] => CA
)
Array
(
    [event] => SIGGRAPH
    [city] => San Francisco
    [state] => CA
)
Array
(

)

结果

Array
(
    [event] => SIGGRAPH
    [city] => San Francisco
    [state] => CA
)
Array
(
    [event] => SIGGRAPH
    [city] => San Francisco
    [state] => CA
)
Array
(
    [event] => SIGGRAPH
    [city] => San Francisco
    [state] => CA
)
Array
(

)

结果

Array
(
    [event] => SIGGRAPH
    [city] => San Francisco
    [state] => CA
)
Array
(
    [event] => SIGGRAPH
    [city] => San Francisco
    [state] => CA
)
Array
(
    [event] => SIGGRAPH
    [city] => San Francisco
    [state] => CA
)
Array
(

)

注意,
compact
忽略未设置的变量。实际上,“compact”将变量数量及其值作为一个数组。各位,我需要数据库代码的解决方案,即
Route::get('/tasks',function(){$tasks=DB::table('tasks')->get();返回视图('templates/tasks',compact('tasks');//其工作//返回视图::make('templates/test',$tasks);//不起作用});
如果您花一点时间阅读
compact
的手册,并且实际花时间查看该查询返回的内容,您就会明白为什么会这样。@lagbox非常感谢,我想我已经解决了问题,如果有任何问题,请告诉您。