Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.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
Laravel 碳格式返回奇怪的字符_Laravel_Localization_Php Carbon - Fatal编程技术网

Laravel 碳格式返回奇怪的字符

Laravel 碳格式返回奇怪的字符,laravel,localization,php-carbon,Laravel,Localization,Php Carbon,我正在使用Laravel中的Carbon在我的项目中生成本地化的日期标签 在我的控制器中,我使用以下代码生成标签: $today = Carbon::now(); $labels[] = [ 'date' => $today->format('Y-m-d'), 'label' => ('Dziś ('.$today->formatLocalized('%a, %e %b').')') ]; $labels[] =

我正在使用Laravel中的Carbon在我的项目中生成本地化的日期标签

在我的控制器中,我使用以下代码生成标签:

$today = Carbon::now();

    $labels[] = [
        'date' => $today->format('Y-m-d'),
        'label' => ('Dziś ('.$today->formatLocalized('%a, %e %b').')')
    ];
    $labels[] = [
        'date' => (clone $today )->addDays(1)->format('Y-m-d'),
        'label' => 'Jutro ('.(clone $today)->addDays(1)->formatLocalized('%a, %e %b').')'
    ];
    $labels[] = [
        'date' => (clone $today )->addDays(2)->format('Y-m-d'),
        'label' => (clone $today)->addDays(2)->formatLocalized('%a, %e %b')
    ];
    $labels[] = [
        'date' => (clone $today )->addDays(3)->format('Y-m-d'),
        'label' => (clone $today)->addDays(3)->formatLocalized('%a, %e %b')
    ];
    $labels[] = [
        'date' => (clone $today )->addDays(4)->format('Y-m-d'),
        'label' => (clone $today)->addDays(4)->formatLocalized('%a, %e %b')
    ];
在出现任何特定于语言的变音符号之前,它都可以正常工作。如果我用
dd(…)
输出
$labels
,我得到的是:

array:5 [▼
  0 => array:2 [▼
    "date" => "2017-04-27"
    "label" => "Dziś (czw, 27 kwi)"
  ]
  1 => array:2 [▼
    "date" => "2017-04-28"
    "label" => b"Jutro (pi±, 28 kwi)"
  ]
  2 => array:2 [▼
    "date" => "2017-04-29"
    "label" => "sob, 29 kwi"
  ]
  3 => array:2 [▼
    "date" => "2017-04-30"
    "label" => "nie, 30 kwi"
  ]
  4 => array:2 [▼
    "date" => "2017-05-01"
    "label" => "pon,  1 maj"
  ]
]
请注意第二项的奇怪标签:

"label" => b"Jutro (pi±, 28 kwi)"
正确的标签应该是:
“Jutro(pią,29 kwi)”

当然,这样的标签在Blade中无法正确输出

怎么了?是因为编码还是我使用的
formatLocalized
方法有误

仅供参考:我已在我的
AppServiceProvider
boot()
方法中设置了区域设置:

    setlocale(LC_TIME, 'pl_PL');
    \Carbon\Carbon::setLocale('pl');

嗨,这个问题可能与波兰语所需的utf-8编码有关。你可以看到我对类似问题的答案

TL;博士


使用
setLocale
函数时,使用utf-8版本的locale-
setLocale(LC_TIME,'pl_pl.utf-8')

您好,此问题可能与波兰语所需的utf-8编码有关。你可以看到我对类似问题的答案

TL;博士

使用
setLocale
函数时,使用utf-8版本的locale-
setLocale(LC_TIME,'pl_pl.utf-8')