• 女人更年期后,要不要避孕?如何避? 2018-05-25
  • 债市风险有多大?华商系债基今年跌幅已超20% 2018-05-25
  • 供电公司采取小额诉讼手段维权 3个月不交电费将收到律师函 2018-05-25
  • 智能公交让全民体验智慧出行 2018-05-25
  • 杭州男子钓起16斤重“猛兽”,专家一看:可别随意丢弃! 2018-05-25
  • 望川十年,看见中国社会的成长 2018-05-25
  • 哈尔滨市“拔钉子”严查露天烧烤 21家冒烟摊位将被依法处罚 2018-05-24
  • 新濠天地娱乐城官网 2018-05-24
  • “澳门368足球博彩公司”足球比分及时直播李国英主持召开省深化医药卫生体制改革领导小组会议 2018-05-23
  • 马来大选92岁前总理改写政治版图 60年来政党首轮替 2018-05-23
  • 科技创新技能挑战赛聚焦冬奥主题 2018-05-23
  • 泰国试管婴儿bnh医院技术怎么样,是最好的吗?—海口论坛 2018-05-23
  • 置业指南:买高层要注意这些问题 2018-05-22
  • い羛琩矪堵旧笴眏い瓣笴潦ㄆン 2018-05-22
  • 有力有序有效防范化解煤电产能过剩风险 2018-05-22
  • Kevensuu's Blog

    Laravel 框架使用

    1、安装
    1)、安装方法

    2)、项目目录结构
    

    2、路由

    1)、指向控制器

    2)、传递参数

    3)、指向视图

    3、控制器

    创建控制器:php artisan make:controller Home/IndexController

    1)、DB操作

    2)、指向视图、传递数据给视图

    4、视图

    1)、公共部分 怎么共用

    2)、数据传递给所有视图

    5、发布

    PHP 控制 API 接口请求频率限制

    这里我们使用 redis 来实现这个功能:

    方法1:

    function limit_api_call_1()
    {
        $redis = new Redis();
        $redis->connect('127.0.0.1', 6379);
    
        $key = "rate_control";
    
        // 判断请求次数是否超限    
        $rate_value_current = $redis->get($key);
        if($rate_value_current > 10)
        {
            return false;
        }
    
        // 请求次数+1
        $rate_value = $redis->incr($key);
        
        // 设置KEY有效期
        if($rate_value == 1)
        {
            $redis->expire($key, 1);
        }
    
        return $rate_value;
    
    }
    

    方法2:

    PHP 加解密函数

    PHP 加密

    function string2secret($str, $key)
    {
       $td = mcrypt_module_open(MCRYPT_DES,'','ecb','');
       $iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND);
       $ks = mcrypt_enc_get_key_size($td);
    
       $key = substr(md5($key), 0, $ks);
       mcrypt_generic_init($td, $key, $iv);
       $secret = mcrypt_generic($td, $str);
       mcrypt_generic_deinit($td);
       mcrypt_module_close($td);
       return base64_encode($secret);
    }
    

    PHP 解密

    function secret2string($sec, $key)
    {
       $sec = base64_decode($sec);
       $td = mcrypt_module_open(MCRYPT_DES,'','ecb','');
       $iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND);
       $ks = mcrypt_enc_get_key_size($td);
    
       $key = substr(md5($key), 0, $ks);
       mcrypt_generic_init($td, $key, $iv);
       $string = mdecrypt_generic($td, $sec);
       mcrypt_generic_deinit($td);
       mcrypt_module_close($td);
       return trim($string);
    }
    

    注意:这里需要 php ???mcrypt 支持

    CodeIgniter 框架 出现 Access denied 错误

    在使用 CI 框架过程中会遇到 Access denied 的错误提示,出现这个错误的问题主要是 PHP 路径配置问题

    解决方法,修改 php 配置文件

    cgi.fix_pathinfo = 1
    

    composer 安装 Laravel 框架

    Composer 作为 PHP 管理依赖(dependency)关系的工具,在使用 Laravel 框架中使用得较为广泛。

    这里我们就来介绍一下通过 Composer 来安装 Laravel 框架的方法。


    安装 Composer

    curl -sS http://www.rocksun.cn/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
    

    PHP 防并发 insert 多条记录

    方式1:通过 redis get|set 来实现

    if($this->user_baby_model->get_lock($params['uid'], $params['bbtype']))
    {
        $this->my_send_log->add(100012, array('add_baby_concurrent', date('Ymd-H:i:s'), $params), 1);
        return $this->error('Err.Unknown_error', 'the same request has exist');
    }
    else
    {
        $this->user_baby_model->set_lock($params['uid'], $params['bbtype']);
    }
    
    public function set_lock($uid, $bbtype)
    {
        $key = $this->set_lock_key($uid, $bbtype);
        return $this->my_redis->save_string('redis_bcache', $key, 1, 10);
    }
    
    public function get_lock($uid, $bbtype)
    {
        $key = $this->set_lock_key($uid, $bbtype);
        return $this->my_redis->get_string('redis_bcache', $key);
    }
    
    public function set_lock_key($uid, $bbtype)
    {
        return md5($uid.$bbtype);
    }