随笔分类 -  php

摘要:背景: 在之前的文章里,介绍了APP_KEY的生成原理和作用,APP_KEY其中的一个主要目的就是用于laravel实现对cookie的加密。 laravel首先会通过src/Illuminate/Encryption/EncryptionServiceProvider.php里的parseKey方 阅读全文
posted @ 2022-04-28 01:31 jamstack 阅读(136) 评论(0) 推荐(0)
摘要:有两种方法 第一种: use Illuminate\Support\Facades\Log; Log::info(json_encode($user); 第二种: use Illuminate\Support\Facades\Log; Log::info(print_r($user, true)); 阅读全文
posted @ 2022-04-28 01:16 jamstack 阅读(223) 评论(0) 推荐(0)
摘要:Gates are simply closures that determine if a user is authorized to perform a given action. 参考资料: https://laravel.com/docs/9.x/authorization 阅读全文
posted @ 2022-04-28 01:11 jamstack 阅读(42) 评论(0) 推荐(0)
摘要:背景: laravel的.env里有一项配置参数,叫APP_KEY,生成APP_KEY的命令,如下: php artisan key:generate 这是用于给APP_KEY赋值的自定义command,定义在src/Illuminate/Foundation/Console/KeyGenerate 阅读全文
posted @ 2022-04-27 18:17 jamstack 阅读(2143) 评论(0) 推荐(0)
摘要:所有自定义命令,都是通过extends Command实现的,对应的处理逻辑在handle方法里 阅读全文
posted @ 2022-04-27 17:59 jamstack 阅读(15) 评论(0) 推荐(0)
摘要:laravel里的服务、第三方包的服务,都是通过extends ServiceProvider实现的,ServiceProvider是一个abstract class 阅读全文
posted @ 2022-04-27 16:25 jamstack 阅读(41) 评论(0) 推荐(0)
摘要:背景: SANCTUM_STATEFUL_DOMAINS是.env里的一个配置选项,在controller控制器里使用.env('SANCTUM_STATEFUL_DOMAINS')获取,一直都是正常的,突然就报了null 分析:首先,确认了.env里SANCTUM_STATEFUL_DOMAINS 阅读全文
posted @ 2022-04-27 02:40 jamstack 阅读(317) 评论(0) 推荐(0)
摘要:背景: laravel的api使用的是scantum扩展包。 在以post方式提交login登录的时候会先get方式调用scantum/csrf-cookie路由,这个路由的响应方法,定义在src/Http/Controllers/CsrfCookieController.php public fu 阅读全文
posted @ 2022-04-27 00:33 jamstack 阅读(160) 评论(0) 推荐(0)
摘要:背景: 手动删除了laravel根目录bootstrap文件夹下的cache文件夹,通过浏览器访问的时候,报错:The /var/www/example-app/bootstrap/cache directory must be present and writable. 解决: 手动创建cache 阅读全文
posted @ 2022-04-27 00:10 jamstack 阅读(614) 评论(0) 推荐(0)
摘要:laravel 8,首次访问报错如下: SQLSTATE[HY000] [2002] Connection refused (SQL: select * from `sessions` where `id` = g9NiFsTVwmc4sbj2JuAWZHhriQ9w1QQDUgu0ehMO lim 阅读全文
posted @ 2022-04-10 19:12 jamstack 阅读(2563) 评论(2) 推荐(1)
摘要:一、安装jetstream composer require laravel/jetstream 二、安装inertia.js php artisan jetstream:install inertia 参考资料 https://jetstream.laravel.com/2.x/installat 阅读全文
posted @ 2022-04-10 18:26 jamstack 阅读(180) 评论(0) 推荐(0)
摘要:以laravel 8为例 一、使用artisan php artisan test 二、使用shell ./vendor/bin/phpunit 使用artisan创建单元测试 php artisan make:test UserTest --unit 阅读全文
posted @ 2022-04-10 11:24 jamstack 阅读(234) 评论(1) 推荐(0)
摘要:你知道吗,laravel的魅力远不止于仅仅是个开发框架,laravel还自带励志的人生格言,在你困顿的时候带给你灵感! 在 src/Illuminate/Foundation/Inspiring.php 里,有一大段格言,使用下面的命令就可以获得 php artisan inspire 意不意外,惊 阅读全文
posted @ 2022-04-10 09:33 jamstack 阅读(112) 评论(0) 推荐(0)
摘要:一、大家都能想到的 打开composer.json,找到laravel/framework,后面对应的就是版本信息 二、使用artisan php artisan --version 三、使用tinker php artisan tinker 进到tinker命令行,执行 app()->versio 阅读全文
posted @ 2022-04-10 09:09 jamstack 阅读(1096) 评论(0) 推荐(0)
摘要:一、使用composer创建laravel 8 composer create-project laravel/laravel:^8.0 example-app 报错: COMPOSER_AUTH" does not match the expected JSON schema, this may 阅读全文
posted @ 2022-04-10 09:05 jamstack 阅读(792) 评论(0) 推荐(0)
摘要:sql injection翻译过来就是sql注入,是指通过构造特定组合的字符串,欺骗应用程序,执行错误的业务逻辑。 明白了sql注入的概念,再来思考怎么预防?在laravel里,通常有以下三种方法来预防sql注入,分别是: 1.使用Validator验证页面提交的参数 $validator = Va 阅读全文
posted @ 2022-04-10 07:22 jamstack 阅读(1044) 评论(0) 推荐(0)
摘要:不需要提前安装composer,在Linux下,要安装composer,需要先安装php环境,如果我们用docker,这样做显然是不必要的,那有没有更简单的方法呢? 那就是使用laravel给我们准备的shell,执行如下命令: curl -s https://laravel.build/test- 阅读全文
posted @ 2022-04-09 23:52 jamstack 阅读(63) 评论(0) 推荐(0)
摘要:以laravel 8为例 # 进入tinker命令行 php artisan tinker 参考资料 https://laravel.com/docs/4.2/artisan https://laravel.com/docs/9.x/artisan#main-content https://lara 阅读全文
posted @ 2022-04-09 23:40 jamstack 阅读(87) 评论(0) 推荐(0)
摘要:在不同版本的laravel里都提供有cli,此处以laravel 8为例: -- 生成migration,laravel 8生成的migration里默认使用$table->id()代表主键,也可以使用$table->increment('id')代替 php artisan make:migrat 阅读全文
posted @ 2022-04-09 21:56 jamstack 阅读(646) 评论(0) 推荐(0)
摘要:背景: laravel 8 ,要迁移的mysql表数据结构如下: cars表: + + + + + + + | Field | Type | Null | Key | Default | Extra | + + + + + + + | id | int unsigned | NO | PRI | N 阅读全文
posted @ 2022-04-09 21:43 jamstack 阅读(195) 评论(0) 推荐(0)