yii2常用代码

获取config params.php配置的参数

$id = Yii::$app->params['adminEmail'];
var_dump($id);

获取参数

$post = Yii::$app->request->post('name');
$get = Yii::$app->request->get('name');

设置/获取cache

Yii::$app->cache->set('name','myname');
$name = Yii::$app->cache->get('name');
var_dump($name);

设置/获取session

Yii::$app->session->set('name','mynamsdfse');
$name = Yii::$app->session->get('name');
var_dump($name);

获取随机字符串

$key = Yii::$app->getSecurity()->generateRandomString(15);
var_dump($key);

数据加密

$md5 = md5('string');
$sha1 = sha1('string');
var_dump($md5);
var_dump($sha1);

try...catch

         try {
            $bool = true;
                if(!$bool){
                 throw new \Exception('没有操作权限');
            }
        } catch (\Exception $e) {
            Yii::error('exam-answer:' . $e->getMessage());
            return $this->renderJson(self::ERR_CODE_FAILURE, $e->getMessage());
        }

事务

$transaction = Yii::$app->db->beginTransaction();
try{
    $transaction->commit();
    return true;
 }catch(\Exception $e){
    $transaction->rollBack();
}

json编码/解码

$data = ['id'=>1,'name'=>'lili'];
$data = json_encode($data);
var_dump($data);
$data = json_decode($data,true);
var_dump($data);

数组排序

$data = [
            ['id'=>1,'name'=>'lisi','sort'=>1],
            ['id'=>2,'name'=>'zhangsan','sort'=>2]
];
        usort($data, function($a, $b){
            if ($a['sort'] == $b['sort'])return 0;
            return ($a['sort'] > $b['sort']) ? 1 : -1;
        });
        var_dump($data);

 $data = [
            ['id'=>1,'name'=>'name1','sort'=>1],
            ['id'=>2,'name'=>'name2','sort'=>2],
            ['id'=>3,'name'=>'name3','sort'=>3],
        ];
        $sorts = ArrayHelper::getColumn($data,'sort');
        /**结果集排序,sort_time从小到大排序**/
        array_multisort($sorts, SORT_ASC, $data);
        echo '<pre>';
        var_dump($data);

数组合并

 $data = [
            ['id'=>1,'name'=>'lisi','sort'=>1],
            ['id'=>2,'name'=>'zhangsan','sort'=>2]
        ];
        $data2 = [
            ['id'=>3,'name'=>'li3','sort'=>1],
            ['id'=>4,'name'=>'zhangsan','sort'=>2]
        ];
        //学生显示资源
        $data = ArrayHelper::merge($data,$data2);
        var_dump($data);

比较两个数组不同元素

        $data = ['name','name2'];
        $data2 = ['name','name3'];
        //学生显示资源
        $data = array_diff($data,$data2);
        var_dump($data);

判断某元素是否在数组里

          $data = ['name','name2','name3'];
        $bool = in_array('name',$data);
        var_dump($bool);

判断key是否存在

        $data = ['id'=>1,'name'=>'name'];
        $bool = array_key_exists('ids',$data);
        var_dump($bool);

错误日志

        $student = new Student();
        $student->real_name = 'student';
        $bool =  $student->save();
        if(!$bool){
            \Yii::error(var_export($student->getFirstErrors(), true));
        }

url和参数处理

         $data = [
            'key'=>'ggg',
            'url'=>'http://www.baidu.com'
        ];
        $data = http_build_query($data);
        var_dump($data);
        $data = urlencode($data);
        var_dump($data);

数组与字符串相互转换

        $string = "1,2,3,4,5";
        $array =  $ids = explode(',', $string);
        var_dump($array);
        $array = ['apple','banana','pear'];
        $string = implode(',',$array);
        var_dump($string);
posted @ 2021-06-22 23:26  胡勇健  阅读(116)  评论(0)    收藏  举报