brew安装过期的php7.4
通过修改 vim /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula/php@7.4.rb
注释掉 disable
# disable! date: "2022-11-28"
安装后会提示下面的错误
通过重装命令解决问题
brew reinstall --build-from-source php@7.4
通过修改 vim /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula/php@7.4.rb
注释掉 disable
# disable! date: "2022-11-28"
安装后会提示下面的错误
通过重装命令解决问题
brew reinstall --build-from-source php@7.4
app/Admin/bootstrap.php
添加扩展
Encore\Admin\Form::extend('DateMultiple', App\Admin\DateMultiple::class);
DateMultiple
类<?php
namespace App\Admin;
class DateMultiple extends \Encore\Admin\Form\Field\DateMultiple
{
protected static $css = [
'/statics/js/npm/flatpickr@4.6.13/flatpickr.min.css',
'/statics/js/npm/shortcut-buttons-flatpickr@0.3.0/light.min.css',
];
protected static $js = [
'/statics/js/npm/flatpickr@4.6.13/flatpickr.js',
'/statics/js/npm/shortcut-buttons-flatpickr@0.1.0/shortcut-buttons-flatpickr.min.js',
'/statics/js/npm/flatpickr@4.6.6/zh.js',
];
}
在laravel中,使用DB查询数据库后,如果在 get()
后直接使用 toArray()
返回的数据是 php
标准的 stdClass
$goods = DB::connection('system')
->table('group_buy_goods')
->get(['id', 'name', 'sold_price']);
dd($goods->toArray());
如果想把对象改为数组可以使用 map
方法修改数据格式
$goods = Db::connection('system')
->table('group_buy_goods')
->get(['id', 'name', 'sold_price'])
->map(function ($value) {
return (array)$value;
});
dd($goods->toArray());
使用 Eloquent 模型查询的数据是数组
GroupBuyGoods::query()->get()->toArray()
感兴趣的可以试下
1、通过 Composer 安装
composer create-project laravel/laravel example-app
2、通过 Laravel 安装器
composer global require laravel/installer
laravel new example-app
具体详见文档
使用 easywechat 拓展包模拟用户登陆的时候出现无法模拟的情况,经过反复测试发现以下问题:
Laravel
方法最后才会写入session
die
停止了后面的代码,(写入 session
等)
别用 exit,dd
等函数停止,使用return
, 让后续代码执行。
或
用 Session::save()
执行写入 session
如下代码会使 easywechat 的默认中间件'wechat.oauth' => \Overtrue\LaravelWeChat\Middleware\OAuthAuthenticate::class,
无法正确获取session
信息
public function mock()
{
if (app()->environment() === 'local') {
$sessionKey = 'wechat.oauth_user.default';
$user = new User([
"id" => "oaa2vs-HAjs0s4_yUWQai0P0pvZk",
"name" => "NULL",
"nickname" => "NULL",
"avatar" => "https://thirdwx.qlogo.cn/mmopen/vi_32/n8QhTK8Q0dAOsWy0CS66PJ8yLcRUZ7UctHEYzTDet74ibPeeqD7f2QhXXDh5zL7INZaZy8ZMXbicwYHiaibOewHYXw/132",
"email" => null
]);
session([$sessionKey => $user]);
dd($user);
}
dd('当前环境无法模拟');
}
将上述代码中的 dd
改为 return
即可正常获取会话数据
public function mock()
{
if (app()->environment() === 'local') {
$sessionKey = 'wechat.oauth_user.default';
$user = new User([
"id" => "oaa2vs-HAjs0s4_yUWQai0P0pvZk",
"name" => "NULL",
"nickname" => "NULL",
"avatar" => "https://thirdwx.qlogo.cn/mmopen/vi_32/n8QhTK8Q0dAOsWy0CS66PJ8yLcRUZ7UctHEYzTDet74ibPeeqD7f2QhXXDh5zL7INZaZy8ZMXbicwYHiaibOewHYXw/132",
"email" => null
]);
session([$sessionKey => $user]);
return($user);
}
return('当前环境无法模拟');
}