thinkpop 5.1 상용 조작

목차
  • 매개 변수 점프
  • 수신 매개 변수
  • 마지막 으로 실 행 된 sql
  • 을 출력 합 니 다.
  • 템 플 릿 탭 순환 출력
  • 템 플 릿 라벨 에서 배열 의 길 이 를 0
  • 으로 판단 합 니 다.
  • 미리 정 의 된 HTML 실 체 를 문자 로 변환 합 니 다
  • update 판단
  • 페이지
  • 할당
  • 데이터베이스 첨삭 검사
  • 데이터베이스 OR 조작
  • 데이터베이스 IN 조작
  • 시간 구간
  • 데이터베이스 자체 증가 자체 감소 수정
  • 사무
  • 분포 식 사무
  • 검증 규칙 내장
  • 조건 판단
  • 컨트롤 러 모듈 작업 이름 가 져 오기
  • apahe 의사 정적 규칙
  • 매개 변수 점프
    {:url('admin/admin/index',id=1)}
    '{:url("admin/index")}?id='+ id 
    

    수신 매개 변수
    $data = input('post.data', 1, 'intval');
    $goods_name = input('get.goods_name', '', 'strval');
    

    마지막 으로 실 행 된 sql 출력
     Db::getLastSql()
    

    템 플 릿 탭 순환 출력
    <foreach name="users" item="vo">
    {$vo.id}  {$vo.username}<br/>
    </foreach>
    

    템 플 릿 탭 에서 배열 길 이 를 0 으로 판단 합 니 다.
    <if condition="count($orderplanfind) gt 0">
    <else />
    </if>
    

    미리 정 의 된 HTML 실 체 를 문자 로 변환 합 니 다.
    {$template|default=""|htmlspecialchars_decode}
    

    업데이트 판단
    $userUpdate=Db::name('user')
         ->where('id',$data['id'])
         ->update(['status' =>$data['status']]);
    

    (1) false 상황 을 되 돌려 줍 니 다: update 가 성공 하지 못 했 습 니 다. 업데이트 방법 이 잘못 되 었 습 니 다 (2) 0 상황 을 되 돌려 줍 니 다. update 가 성공 하 였 으 나 데이터 가 변 하지 않 았 습 니 다. 업 데 이 트 될 수 있 는 전후 데이터 가 일치 하여 변 하지 않 았 습 니 다 (3) 숫자 나 true 상황 을 되 돌려 줍 니 다.
    보통 $userUpdate! =거짓 판단
    페이지 를 나누다
    백 엔 드
    $page  = input('get.page', 1, 'intval');
    $limit = input('get.limit', 100, 'intval');
    
    $user= Db::name("user")
    ->where('type',1)
    ->paginate($limit, false, ['page' => $page, 'query' => request()->param()])
    ->each(function($item, $key){
    })
    
    $this->assign('page', $user->render()); //                   
    
    //                
    $data['data']  = $list->items();//  
    $data['count'] = $list->total();//  
    

    전단 에 페이지 처리 가 없 을 때
    <volist name="user" id="user">
    </volist >
    
    {$page|default=''}
    

    값 을 부여 하 다
    $this->assign('users', $users);
    

    데이터베이스 추가 삭제 검사
    use think\Db;//   model   
    // 
    $userbank=Db::name('user_bank')
               ->where('id',1)
               ->delete();
    // 
    $data=[
    	'id'=>1,
    	'name'=>2
    ];
    $userbank=Db::name('user_bank')
     			->insert($data);
    // 
    $userbank=Db::name('bill_record')
    	       ->where('id',$data['id'])
    	       ->update(['status' =>$data['status']]);
    //    
    $sellerplan=Db::name("user")
    			->field('id,name')
    			->where('uid',1)
    			->find();//       select  column('    ', '    ')        value('   ')
    
    //    
    $join = [
          ['__SELLER_PLAN__ b', 'a.id=b.uid', 'LEFT'],
    ];
    $list = Db::table('__USER__')
        ->alias('a')
        ->join($join)
        ->where([
            'a.order_status' => 1
        ])
        ->field('a.*,b.name')
        ->select()
        
    //    
    $res = Db::table('  1.  1 t1,   2.  2 t2')
           ->where('t1.id = t2.id')
           ->limit(100)
           ->select();
    

    데이터베이스 OR 조작
    ->where('id|uid','eq',1)
    

    데이터베이스 IN 조작
    ->where([
       'order_state' => [0, 1, 4, 10]
    ])
    

    시간 구간
    //           
    ->whereBetweenTime('audit_time', $time[0], $time[1])
    
    //        
    db('XXX')->whereTime('create_time', 'today')->select();
    //        
    db('XXX')->whereTime('create_time', 'yesterday')->select();
    //        
    db('XXX')->whereTime('create_time', 'week')->select(); 
    //        
    db('XXX')->whereTime('create_time', 'last week')->select(); 
    //        
    db('XXX')->whereTime('create_time', 'month')->select(); 
    //        
    db('XXX')->whereTime('create_time', 'last month')->select(); 
    //        
    db('XXX')->whereTime('create_time', 'year')->select(); 
    //        
    db('XXX')->whereTime('create_time', 'last year')->select(); 
    

    데이터베이스 자동 증가 자동 감소 수정
    //  
    Db::name('user')
        ->where('id', 1)
        ->setInc('frozen', 2);
    //  
    Db::name('user')
          ->where('id', 1)
          ->setDec('fund', 2);
    

    사무.
    //    
    Db::startTrans();
    try {
        Db::name('core_counter')->where('id', $id)->update(['value' => $value]);
        //  
        Db::commit();
    } catch (\Exception $e) {
    	//     
    	dump($e->getMessage())//           
        Db::rollback();
    }
    

    분산 사무
    Db::transactionXa(function () {
        Db::connect('db1')->table('think_user')->delete(1);
        Db::connect('db2')->table('think_user')->delete(1);
    }, [Db::connect('db1'),Db::connect('db2')]);
    

    내 장 된 인증 규칙
    protected $rule = [
    	'username' => 'require|unique:user',
    	'nickname' => 'require',
    	'role_id' => 'require|integer',
    	'password' => 'require|confirm',
    	'email' => 'email',
    	'mobile' => 'mobile',
    	'status' => 'in:0,1',
    ];
    protected $message = [
    	'username.require' => '       !',
    	'username.unique' => '       !',
    	'nickname' => '        !',
    	'role_id.require' => '        !',
    	'role_id.integer' => '      !',
    	'password.require' => '      !',
    	'password.confirm' => '          !',
    	'email' => '        !', 
    	'mobile' => '        !', 
    	'status' => '      ( 0 1)!', 
    ];
    

    조건 부 판단
    eq 혹은 equal
    ... 과 같다
    neq 또는 notequal
    같 지 않다
    gt
    ... 보다 크다
    egt
    ... 보다 크다
    egt
    ... 보다 크다
    lt
    ... 보다 작다
    elt
    이하
    heq
    항등한다
    nheq
    ... 에 항등되다
    컨트롤 러 모듈 작업 이름 가 져 오기
     $module     = $this->request->module(); //  
     $controller = $this->request->controller();//   
     $action     = $this->request->action();//  
    

    apahe 의사 정적 규칙
       (  )(Linux)
    .c>
    	RewriteEngine on
    	RewriteCond %{REQUEST_FILENAME} !-d
    	RewriteCond %{REQUEST_FILENAME} !-f
    	RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
    </IfModule>
    
    
       (  )(win)
    .c>
      Options +FollowSymlinks -Multiviews
      RewriteEngine On
    
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteRule ^api/?(.*)$ api.php?s=$1 [QSA,PT,L]
    
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteRule ^(.*)$ index.php?s=$1 [QSA,PT,L]
    </IfModule>
    

    좋은 웹페이지 즐겨찾기