我正在尝试使用来自数据库的数据在laravel 5.4项目的登录页面上创建一个adverts部分,但是它不起作用。在欢迎中,我添加了以下代码行
foreach($adverts as $advert) {
$advert;
}
然后,我使用以下代码创建了WelcomeController
namespace App\Http\Controllers;
use Illuminate\Support\Facades\DB;
use Illuminate\Http\Request;
class WelcomeController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('auth');
}
/**
* Show the application dashboard.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$adverts = DB::table('adverts')->get();
return view('welcome', ['adverts' => $adverts]);
}
}
这给我一个错误$ adverts未定义我该怎么办?
$adverts is not defined
错误即将到来,因为您丢失了,echo
或者在Laravel的情况下{{$ adverts-> item}}。
您需要通过以下方式在刀片文件中回显$adverts
数据foreach
:
@foreach($adverts as $advert)
{{ $advert->item }}
@endforeach
或者您也可以像下面这样简单地使用PHP:
foreach($adverts as $advert){
echo $advert->item;
}
您还可以将数据转换为数组,然后在如下所示的foreach中显示:
$adverts = DB::table('adverts')->get();
$adverts = json_decode( json_encode($adverts), true);
@foreach($adverts as $advert)
{{ $advert['item'] }}
@endforeach
您可以先按照以下方式检查$ advert数组中的内容:
echo "<pre>"; print_r($adverts); die;
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句