Php 类stdClass的对象出现问题,无法转换为字符串
我在这一行有错误Php 类stdClass的对象出现问题,无法转换为字符串,php,mysql,laravel,orm,Php,Mysql,Laravel,Orm,我在这一行有错误$number=“$autonumber[0]/$automonth/$autoyear/proforma”。 这是一个错误: 我试图使功能开关将添加到其他数据月的形式数。我不知道我做错了什么。有人帮我吗 这是具有此功能的控制器,开关产生错误: public function store(Request $request) { $autoyear = date('Y'); $automonth = date('m'); $autonumber = DB:
$number=“$autonumber[0]/$automonth/$autoyear/proforma”代码>。
这是一个错误:
我试图使功能开关将添加到其他数据月的形式数。我不知道我做错了什么。有人帮我吗
这是具有此功能的控制器,开关产生错误:
public function store(Request $request)
{
$autoyear = date('Y');
$automonth = date('m');
$autonumber = DB::table('proforms')
->select(DB::raw('MAX(autonumber) as autonumber'))
->where('automonth', '=', '$automonth')
->where('autoyear', '=', '$autoyear')
->get();
$autonumber[0]++;
$number = "$autonumber[0]/$automonth/$autoyear/proforma";
DB::table('proforms')->insert(
['autonumber' => $number, 'automonth' => $automonth, 'autoyear' => $autoyear]
);
request()->validate([
'user_id' => 'required',
'proformdate' => 'required',
'selldate' => 'required',
'paymentmethod' => 'required',
'paymentdate' => 'required',
'status' => 'nullable',
'city' => 'nullable',
'comments' => 'nullable',
'name' => 'required',
'PKWIU' => 'nullable',
'quantity' => 'required',
'unit' => 'required',
'netunit' => 'required',
'nettotal' => 'required',
'VATrate' => 'required',
'grossunit' => 'required',
'grosstotal' => 'required',
]);
Proform::create($request->all());
return redirect()->route('proforms.index')
->with('success', 'Proform created successfully.');
}
dd后($autonumber);
我得到:
打印后(自动编号)
有一个误解,下面的代码将不会返回整数,而是返回具有以下结构的对象:{“autonumber”:42}
$autonumber = DB::table('proforms')
->select(DB::raw('MAX(autonumber) as autonumber'))
->where('automonth', '=', '$automonth')
->where('autoyear', '=', '$autoyear')
->get();
更改代码以使用该结构
$autonumber[0]->autonumber++;
$number = $autonumber[0]->autonumber;
$number = "$number/$automonth/$autoyear/proforma";
print\r($autonumber)
查看它是什么。照亮\Support\Collection对象([items:protected]=>Array([0]=>stdClass对象([autonumber]=>))或者使用->value('autonumber')
或者仍然使用->get()
并到达内部维度$autonumber[0]->自动编号
请共享问题中的错误消息,以及您的调试尝试。stdClass类的对象无法转换为字符串
$autonumber = DB::table('proforms')
->select(DB::raw('MAX(autonumber) as autonumber'))
->where('automonth', '=', '$automonth')
->where('autoyear', '=', '$autoyear')
->get();
$autonumber[0]->autonumber++;
$number = $autonumber[0]->autonumber;
$number = "$number/$automonth/$autoyear/proforma";