随笔分类 - PHP
摘要:在多台服务器中,会遇到 Session 共享的问题。 之前用的实体服务器,都在同一局域网,很好解决。 但是迁移到 AWS 服务器后,不再满足同一局域网。 决定用 ElastiCache Redis 来管理 Session。 安装 phpredis 扩展 在不重新编译 PHP 的前提下,用 phpiz
阅读全文
摘要:Laravel 有自己的 404 处理方式及对应的页面 大多项目中都需要定义自己的 404 页面 有些时候 404 页面中有动态数据 本篇文章的使用 Laravel 9 一、自定义 404 页面 方案一、在 resources/views/errors/ 创建 404.blade.php 文件, 方
阅读全文
摘要:Laravel 自带了用户认证 Auth。有看守器和提供器来实现。 对于前后台都需要登录的系统,需要添加一套用户认证。 本文中使用 Laravel 9。 一、生成自带的用户认证 php artisan ui:auth 1、执行脚手架命令后生成下面的代码 - app/Http/Controllers/
阅读全文
摘要:项目中为了方便快捷的处理问题,PHP 结合 shell 脚本非常常见。 一、怎么用 exec (string command [, string array [, int return_var]]) // string command 命令行 // string array 命令行返回的所有结果,是
阅读全文
摘要:1、implode() & join() 数组转换为字符串,二者等效 2、strlen() & mb_strlen() 计算字符长度,后者可以设置编码且汉字长度为 1 使用时首先确认文件编码、数据库编码、浏览器编码是否统一 3、curl_errno($ch) & curl_error($ch) &
阅读全文
摘要:Laravel 中的数据库是以 PDO 的方式连接的 数据库连接失败时,先检查问题所在,再对症下药 本文以 pgsql 为例 1、判断 pgsql 是否启动 2、判断 pdo_pgsql 扩展是否安装并开启 没有则需要安装,以下是不重新编译 PHP,直接安装 pdo_pgsql 的步骤 3、判断 L
阅读全文
摘要:熟悉开发环境,可以更好地完成开发工作。 本篇选用最新版本 Apache 2.4 + PHP 7.3 + PostgreSQL 11.2 服务器是 CentOS 7.6,全部编译安装 一、安装 Apache 1、安装包 - http://archive.apache.org/dist/httpd/ht
阅读全文
摘要:一、Laravel 中 ajax 请求需要设置 header $.ajaxSetup({headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')}}); 或 headers: { 'X-CSRF-TOKEN': $(
阅读全文
摘要:在 Laravel 中,路由是项目的起点。 下面总结一些路由中常见的问题。 一、路由 404 是因为配置文件没有开启重定向模块,可以通过下面的操作解决。 二、微信开发路由 Laravel 中的 POST 请求都需要 CSRF 数据,但是微信并不会带过来。可以让 csrf 排除这些路由。
阅读全文
摘要:项目中,分页经常会用到。 Laravel 中也自带了分页功能。 但有些时候需要稍作修改,来满足自己的需求。 一、普通分页 1、控制器中,用 paginate() 方法。 $users = DB::table('users')->paginate(15); 或简单分页 $users = DB::tab
阅读全文
摘要:Laravel 框架比较庞大,更适用于比较大的项目。 为了整个项目文件结构清晰,不同部分分为不同模块很有必要。 一、安装扩展包 1、根据不同 Laravel 版本,选择扩展包版本。 packagest 链接 - https://packagist.org/packages/nwidart/larav
阅读全文
摘要:很多项目中会用到自动执行脚本的功能, 例如,自动统计上个月的注册用户,定时生成 csv 文件并邮箱发送给客户等等。 Laravel 中的任务调度,可实现定时任务, 结合自定义 artisan 命令,即可实现自动执行自定义脚本。 一、创建命令 1、artisan 创建 上面的命令,会在 app/Con
阅读全文
摘要:服务器上传文件会有一定的限制。避免内存消耗过大影响性能,在 php.ini 配置文件中,有几个影响参数: upload_max_filesize = 2M //PHP最大能接受的文件大小 post_max_size = 8M //PHP能收到的最大POST值' memory_limit = 128M
阅读全文
摘要:Laravel 5.5 + Mysql 5.5 ,执行 migrate 时,提示索引长度超过指定的 1000 bytes 原因: Mysql 对索引有一定的长度限制,版本不同长度不同; MyIsAm 长度小于 InnoDB 长度。 解决: 1、将 Mysql engine 修改为 innodb; 2
阅读全文
摘要:一、create 二、update 三、delete 四、read 五、其他 1、sql 绑定变量: 2、数据 cache 3、事务 4、链式操作
阅读全文
摘要:项目中难免会有 form 提交,对用户输入的所有信息进行过滤,可以避免 XSS 攻击,防止 SQL 注入。 一、设置配置信息 首先在 config.php 文件中,对 security 相关信息进行设置, 二、常用方法 1、clean($value, $filters = null) 2、strip
阅读全文
摘要:一、可用规则: 1、required 不能为 null, false or empty string.; 2、required_with 关联某个字段,关联字段有值则该字段必须有值; 3、match_value 两个参数:param1,要匹配的字符;param2,是否严格(true则全等, ); 4
阅读全文
摘要:框架封装好的 model 类有几个,按需继承就好。 有:/fuel/core/classes/model/crud.php /fuel/packages/orm/classes/model.php /fuel/packages/orm/classes/model/soft.php 包含软删除的相关方
阅读全文
摘要:FuelPHP 中,默认可以通过 /controller_name/function_name 这种方式来访问,也可以通过自定义路由来访问。 路由配置在 /fuel/app/config/routes.php 文件中。 一、最简单的路由设置,键值对形式。 键名是 URL 中输入的内容,对应的值为请求
阅读全文
摘要:之前用过 Laravel,框架自带的 artisan 命令,用得爽到爆。现在工作需要,要学习 FuelPHP,首先看到框架目录结构,有 coposer.json 框架可以用 composer 管理,一定也有自己的命令工具。 对于新手来说,不妨先用命令自动生成文件,然后看这些生成的文件了解基本的 CR
阅读全文