php算法
苗先生的PHP记录
有什么我碰到的问题, 看了我的笔记没有解决,可以在帖子中留言 , 大家一起探讨解决!
正在想跨出舒适圈,而每个人都喜欢在舒适圈里呆着,整得我都进不去了-v-
懒得要命 ,很少做原理文字分析,都是自己在项目中遇到的问题或笔记,我只要结果不要过程!
展开
-
is_file(): open_basedir restriction in effect.
上传文件遭遇下列问题中文翻译:原因:php配置文件设置了open_basediropen_basedir 这个是用来限制php的目录访问权限什么的,如果不在允许的范围内,php就不能访问。可添加自己的项目目录到open_basedir也可如下图: (注释此行: 全部可访问(有安全隐患))...原创 2020-12-03 18:23:47 · 6103 阅读 · 0 评论 -
实名认证 类php
//校验 身份证号码合法性$idcheck = new IdCardIdentity();$res = idcheck−>checkid(idcheck->check_id(idcheck−>checkid(card_id);<?php/** * Created by PhpStorm. * User: swl * Date: 2018/7/3 * Time: 10:23 */namespace App; class IdCardIdentity{.原创 2020-10-12 09:07:45 · 308 阅读 · 0 评论 -
SKU视频教程
tp6shop - singwa - 10-10我也没整明白,用到的时候再回来看原创 2020-06-19 19:29:26 · 453 阅读 · 4 评论 -
匹配并替换图片路径为全路径
preg_replace函数正则表达式替换preg_replace('/(<img src=")(.*?)/','$1'.request()->domain().'$2',$goods['description'])原创 2020-10-12 10:52:49 · 261 阅读 · 0 评论 -
引用的方式增加 无限级分类
&$s : 引用$ssingwa -tp6shop 8-13直接调用上级栏目数组下多一个list,list里有下级栏目public static function getTree($data) { $items = []; foreach ($data as $v){ $items[$v['id']] = $v; //$items索引为$v['id'],值为$v } $tree = [];原创 2020-06-09 12:27:36 · 88 阅读 · 0 评论 -
简单的工厂模式(使用多种SMS发送短信)
singwa tp6shop 7-10使用接口,创建同级文件接口类SmsBaseinterface SmsBase{ public static function sendCode(string $phone ,int $code);}让SDK直接实现接口class AliSms implements SmsBase在业务逻辑里不再调用单个短信SDK(阿里云),而是使用工厂模式,在控制器调用短信时直接传一个sms名称controller层if (SmsBusiness::原创 2020-06-04 17:13:16 · 461 阅读 · 0 评论 -
图片上传类
//图片上传 调用上传前一定要确定有文件,否则会出错 public function image($file,$controller,$method) {// 调用上传前一定要确定有文件,否则会出错// if ($file == null ){// $this->error('获取图片失败','article/ad...原创 2020-04-17 13:40:00 · 101 阅读 · 0 评论 -
tp 切换城市
原理通过遍历可用的城市数据,获取一个默认的值is_default = 1 时,break终止循环 ,如果没有值就给一个默认的值需要考虑当点击切换到一个城市后回到了首页,即url后没有关于城市的get参数,所以用session存储选中的城市 demo: o2o controller : index\Baseview : publilc\head public ...原创 2019-09-26 21:58:46 · 81 阅读 · 0 评论 -
tp 对象转换成数组
tp 对象转换成数组$city是数组$citys = $city->toArray();原创 2019-09-26 20:53:29 · 428 阅读 · 0 评论 -
tp抛出异常 try catch
本案例在 o2o\app\index\controller\User registerController$data = 12;//testtry{ model('User')->add($data);}catch (\Exception $e){ $this->error($e->getMessage());}Model (commo...原创 2019-09-26 14:07:37 · 376 阅读 · 0 评论 -
xss防攻击
在输入框中写入达到攻击的效果防范:在controller中获取值时,写入 htmlentities 函数, 把输入的文本转化成html实体,即 <> 转化成lt,gt$data = input('post.');'name' => htmlentities($data['name']),...原创 2020-10-12 10:55:05 · 88 阅读 · 0 评论 -
Tp多条件搜索,like模糊查询,时间查询
demo: o2oapp\admin\controller\dealapp\common\model\dealapp\admin\view\deal\index效果 :无条件 : SELECT * FROM o2o_deal WHERE status = 1 ORDER BY id DESC有条件 : SELECT * FROM o2o_deal WHERE category_id ...原创 2019-09-18 23:09:53 · 387 阅读 · 0 评论 -
删除分类的同时删除下面分类的文章,并删除图片
首先 article表 文章表,有cate_id和 cate表的id对应bick项目 cate部分Model:<?phpnamespace app\Admin\model;use think\Model;use think\Collection;use app\Admin\model\Article as ArticleModel;class Cate extends...原创 2019-08-22 20:21:09 · 113 阅读 · 0 评论 -
tp5 多表查询
article表 : 文章表列 类型 注释id mediumint(9) 自动增量 title varchar(60) 标题keywords varchar(100) 关键字desc varchar(255) 描述author varchar(50) 作者content text 内容click mediumint(9) [0] 点击量zan mediumint(9) [0...原创 2019-08-21 12:17:38 · 472 阅读 · 0 评论 -
开关checkbox
正常写时,当点击选中时,开关有值,但是当取消选中时,却不提交字段,所以需要以下写法来验证demo: bick项目中 conf目标: 选中时,提交选中的值 , 未选中时提交空值Controller:if ($this->request->isPost()){ $form_arr = array();//提交的en_name字段 数组 ...原创 2019-08-25 12:32:43 · 131 阅读 · 0 评论 -
Tp 5 volist循环 一次循环两个结果
就是$i是从 1 开始循环 ,key的下标却是从 0 开始{volist id="vo" name="data"}{if condition="$i % 2 eq 1"}<div> <div>{$vo.id}</div> <div> <?php echo $data[$key + 1]['id'] ; ...原创 2019-09-28 22:06:35 · 411 阅读 · 0 评论 -
php 分类 菜单 树形显示
添加功能调用方法显示一级菜单以及所有子菜单 public function add() { $menus_list = $this->db->table('admin_menus')->where(array('status'=>0))->cates('mid'); $menus = $this->getTreeItem...原创 2019-08-04 14:08:09 · 150 阅读 · 0 评论