• cakephp中find('list')的使用


    运用一、快速实现下拉菜单

    控制器中,使用find('list')返回的是键值对的数组,键名是array的第一个参数id,键值就是第二个参数content。

        public function list_select(){
            //查询键值对
            $list = $this->Post->find('list',array('fields' => array('Post.id','Post.content')));
            //var_export($list);
            $this->set('options',$list);
        }

     $list的内容类似

    array ( 1 => 'new_content', 2 => 'content2', 3 => 'new_content', 4 => 'c4', 5 => 'w', )

    View中,$list的格式恰恰满足$options选项的要求

    <?php
    echo $this->Form->input('', array(
              'name' => 's',
              'options' => $options,
              'empty' => '(choose one)'
         ));
    ?>

    生成结果是个下拉列表,内容就是之前的键值对

    运用二、将查询的结果集放到一个数组中

    有表property_type,结构如图

    $arr_ids = explode(',', '1,2,3');
    $result = $this->PropertyType->find('all', array(
        'fields'=>array('name'),
        'conditions'=>array('id' => $arr_ids)
        )
    );

    使用find('all')得到的结果,三条记录是三个数组

    Array
    (
        [0] => Array
            (
                [PropertyType] => Array
                    (
                        [name] => House
                    )
    
            )
    
        [1] => Array
            (
                [PropertyType] => Array
                    (
                        [name] => Unit
                    )
    
            )
    
        [2] => Array
            (
                [PropertyType] => Array
                    (
                        [name] => Townhouse
                    )
    
            )
    
    )

    改为find('list')

    $arr_ids = explode(',', '1,2,3');
    $result = $this->PropertyType->find('list', array(
        'fields'=>array('name'),
        'conditions'=>array('id' => $arr_ids)
        )
    );

    得到的所有结果在一个数组中,结构干净许多

    Array
    (
        [1] => House
        [2] => Unit
        [3] => Townhouse
    )

    再将数组转为字符串 implode(',',$result);

  • 相关阅读:
    字符串常见考题
    二叉树的按行层序遍历及序列化和反序列化
    二叉搜索应用(2)
    Kubernetes-存活探针(liveness probe)
    Kubernetes-ReplicationController(RC)
    Kubernetes-ReplicaSet(RS)
    Kubernetes-DaemonSet
    Kubernetes-PersistentVolume(PV)介绍
    centos7.x 通过yum方式安装java jdk1.8.0
    Kubernetes-卷/存储卷(emptyDir/hostPath/pv/pvc)
  • 原文地址:https://www.cnblogs.com/mafeifan/p/3266607.html
Copyright © 2020-2023  润新知