我感到困惑,这是 laravel 观察者或 MySQL 触发器之间的最佳实践。
在 Laravel 中,我的代码看起来像
public function updated(My_Activity $my_activity)
{
$activity = new Activity_Log();
$activity->activity_id = $my_activity->id;
$activity->status = $my_activity->status;
$activity->description = $my_activity->description;
$activity->save();
}
Run Code Online (Sandbox Code Playgroud)
在 MySQL 中,
BEGIN
INSERT INTO Activity_Log
SET id = OLD.id, status = OLD.status, description = OLD.description
END
Run Code Online (Sandbox Code Playgroud)
最佳做法是什么?对他们中的一个人未来有没有好的影响?
将php版本从7.0升级到7.1时出现问题。我正在使用PHPExcel Laravel创建/导出xls文件。
错误消息是“遇到格式错误的数值”。但是,当我将类型从xls更改为xlsx时,运行良好但格式错误。我认为问题是因为我升级了php版本。
已经尝试更改代码,进行修改,但是一切都一样。有人可以帮忙吗?
MyController看起来像:
public function exportPo(Request $request)
{
try{
if($request->getMethod() == 'POST'){
$input = $request->all();
$validator = Validator::make($input, [
'start_date' => 'required|date',
'end_date' => 'required|date',
]);
if ($validator->fails()) {
return redirect(route('export-po'))
->withErrors($validator)
->withInput();
}
$postData = [];
$postData['search_term']['date'] = [
'start_date'=> $input['start_date'],
'end_date'=> $input['end_date']
];
if(count($postData) > 0){
//Export the excel file here
$poList = EprocModel::getPostData('/listPurchaseOrder', $postData);
$poListArr = json_decode($poList, true);
if(isset($poListArr['data'])){
$row = [];
foreach($poListArr['data'] as $data){
switch($data['status_po']){
case 0:
$status = 'Baru';
break;
case 2:
$status …Run Code Online (Sandbox Code Playgroud) 我怎样才能从这个PHP代码获得最便宜的价格?
Array
(
[SKU0001901] => Array
(
[0] => 300000
[1] => 50000
)
[SKU0001902] => Array
(
[0] => 400
[1] => 2000000
[2] => 500
)
[SKU0001903] => Array
(
[0] => 100000
[1] => 500000
)
)
Run Code Online (Sandbox Code Playgroud)
期待:SKU0001901为50000,SKU0001902最便宜为400等.
解决了
有很多方法可以回答我的问题.就我而言,我使用array_map.
$o = array_map('min', $array);
Run Code Online (Sandbox Code Playgroud)
在未来,我想研究哪种方法使其更快,特别是在大数据数据中.