微信小程序接口问题

storm1人参与 次点击
PHP实战视频教程大全

 童老师 ,我学到小程序接口那里有个问题,我图片的增删改都是在model层处理的,

<?php

namespace app\admin\model;

use think\Model;

/**

* 上传图片

*/

class Banner extends Model

{

//字段获取

public function getImgSrcAttr($value)

{

return config('queue.baseurl') . $value;

}

protected static function init()

{

// 添加

banner::event('before_insert', function ($banner) {

// dump($_FILES);die;

if ($_FILES['img_src']['name']) {

$file = request()->file('img_src');

$info = $file->move(ROOT_PATH . 'public' . DS . 'static' . DS . 'banner');

if ($info) {

$thumb = $info->getFilename();

$banner['img_src'] = date('Ymd') . '/' . $thumb;

}

}

});

//修改

banner::event('before_update', function ($banner) {

if ($_FILES['img_src']['tmp_name']) //如果图片路径存在

{

$banners = banner::find($banner->id); //通过ID获取该文章的相关信息

$thumbpath = $_SERVER['DOCUMENT_ROOT'] . DS . 'public' . DS . $banners['img_src']; //配置图片的所在路径

if (file_exists($thumbpath)) //如果路径存在

{

@unlink($thumbpath); //删除旧的图片

}

//上传新的图片

$file = request()->file('img_src');

$info = $file->move(ROOT_PATH . 'public' . DS . 'static' . DS . 'banner');

if ($info) {

$thumb = $info->getSaveName();

$banner['img_src'] = date('Ymd') . '/' . $thumb;

}

}

});

// 删除

banner::event('before_delete', function ($banner) {

$banners = banner::find($banner->id); //通过ID获取该文章的相关信息

$thumbpath = $_SERVER['DOCUMENT_ROOT'] . DS . 'public' . DS . $banners['img_src']; //配置图片的所在路径

dump($thumbpath);die;

if (file_exists($thumbpath)) //如果路径存在

{

@unlink($thumbpath); //删除旧的图片

}

});

}

}


然后用只读字段就不能进行删除了,因为只读字段把地址改写了

    1 讨论 | 直到 2018-02-12 3:55:51
  • storm
    1

    好吧 解决了 用的字符串替换把前面的换成空的了,不知道老师是怎么做

  • 抱歉,回复话题必需登录。