簡體   English   中英

Laravel 5.4中的未定義常數

[英]Undefined constant in Laravel 5.4

我正在將舊代碼從4.2遷移到5.4。 我的index.php觸發了錯誤:未定義的常量CURRENCY_BEFORE假定為'CURRENCY_BEFORE

從這一行:

<select name="curreny_position">
    <option value="BEFORE"
    <?php if ($curr_pos['value'] == CURRENCY_BEFORE) echo "selected"; ?>> 
     Before
    </option>
    <option value="AFTER" <?php if ($curr_pos['value'] == CURRENCY_AFTER) echo "selected"; ?>>After
    </option>

我不確定這是否有幫助,但這是我的settings.php文件中的標注:

{
    $currency_position = self::param('site', 'curr_position')['value'];
    $currency = self::param('site', 'currency')['value'];
    switch ($currency_position) {
        case CURRENCY_BEFORE:
            return implode(' ', [$currency, number_format($amount, 2)]);
            break;
        case CURRENCY_AFTER:
            return implode(' ', [number_format($amount, 2), $currency]);
            break;
 }

定義上面的CURRENCY_BEFORE的正確方法是什么?

我建議將常量的定義移到配置文件中

<?php
/**
 *  file: app/config/constants.php
 */

return [
    'CURRENCY_BEFORE' => 'BEFORE'
];

那么您可以通過Config::get('constants.CURRENCY_BEFORE')調用應用程序中的任何位置

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM