我正在尝试在welcome.blade.php中使用命令,但是不知道正确的语法
尝试了所有解决方法,但没有进行任何操作
<?php echo
@php和@endphp之间的代码工作正常,但是当我添加<div class="col">
@php
$decoded_json =json_decode(file_get_contents("https://api.coinmarketcap.com/v1/ticker/"), TRUE);
function price($curr) {
global $decoded_json;
$js = array_column($decoded_json, 'price_usd', 'id');
return $js[$curr];
}
@endphp
<body>
BTC $<?php echo price("bitcoin");?>
<br />
LTC $<?php echo price("litecoin"); ?>.
<br />
XMR $<?php echo price("monero"); ?>.
</body>
编辑:我现在有
<?php echo string throw a 500 error
页面加载,但没有值加载。我在做什么错了?
答案 0 :(得分:0)
您真的在通过执行视图中的所有操作来与框架作斗争。如果您要这样做的话,也可以只使用Plain-old-php。
尽管如此,如果您真的不想使用控制器,则可以通过在路由文件web.php
中执行API查找,然后将数据传递到视图来使逻辑保持一定的分离。
Route::get('/', function () {
$response = json_decode(file_get_contents("https://api.coinmarketcap.com/v1/ticker/"),true);
$currencyValues = array_column($response, 'price_usd', 'id');
// Now call your view and pass in the data so the view has access to it.
// Notice that the view will have access to a variable named `$currencies` and not `$currencyValues`
return view('welcome', [
'currencies' => $currencyValues
]);
});
然后,在您的视图中,welcome.blade.php
可以输出检索到的货币。
编辑-忘记了我们在Blade中工作。添加了{{ ... }}
。
{{ $currencies['bitcoin'] }}
<br />
{{ $currencies['litecoin'] }}