php - Laravel - 本地主机返回数组但服务器返回对象
问题描述
我在 localhost + 服务器中运行相同的代码,但 Laravel 的响应不同。
在 localhost 中,我得到一个array
. 在服务器中,我得到一个object
.
我不知道为什么,因为这永远不会发生。
我正在使用Laravel 5.7.x和默认response()->json(...)
方法。
代码
本地主机(Windows 10,php 7.3.14)
"departments": [
{
"name": "Sem departamento",
"vacancies": [
{
"id": 264,
"title": "OFICIAL DE MANUTENÇÃO PREDIAL (REFRIGERAÇÃO)",
"pcd": 0,
"internal_code": null,
"company_department_id": 0,
"exam_filename": null,
服务器 (DigitalOcean) (Ubuntu 18.04, PHP 7.3.11)
"departments": {
"0": {
"name": "Sem departamento",
"vacancies": [
{
"id": 74,
"title": "Técnico de Sistemas Júnior",
"pcd": 0,
"internal_code": null,
"company_department_id": 0,
"exam_filename": null,
脚本
$departments[0] = [
'name' => 'Sem departamento',
'vacancies' => []
];
foreach ($vacancies as $v) {
if (empty($v->companyDepartment)) {
$departments[0]['vacancies'][] = $v;
} elseif (empty($departments[$v->companyDepartment->id])) {
$departments[$v->companyDepartment->id] = [
'name' => $v->companyDepartment->name,
'vacancies' => [$v]
];
} else {
$departments[$v->companyDepartment->id]['vacancies'][] = $v;
}
}
return response()->json(compact('departments'));
解决方案
推荐阅读
- python - python中某些字符类型的最长连续子字符串
- javascript - 使用 webpack [request] 魔术注释将动态模块捆绑在一起
- python - 如何在由第二列定义的固定间隔内对一列的元素求和?
- flutter - Flutter 中如何渲染字体或者如何避免垂直间距?
- python - 在 Python 中导入时未解析的引用
- laravel - Laravel 5.7 Testing with Passport in seeder
- python - 基于标签而不是绝对位置在 XML 中查找值
- exchange-server - 使用 Exchange 和 SonicWall 配置 HA 代理
- laravel - Laravel:更改密码路径中的 MethodNotAllowedHttpException 错误
- python - 通过 Celery 中的参数获取正在运行的工作者