1.下载安装memcached软件,地址memcached下载,解压到某一目录,比如D:memcached,管理员身份运行cmd.exe,在memcached目录下运行
memcached -d install

memcached -d start

启动任务管理器,上述操作成功的话能够 memcached.exe的进程

2.安装php7memcache扩展,下载地址
解压出来的php-7.0.x_memcache.dll文件放在D:phpStudyphpphp-7.0.12-ntsext里,

3.修改php.ini

extension_dir = "D:/phpStudy/php/php-7.0.12-nts/ext"

extension=php-7.0.x_memcache.dll

4.重启phpstudy,查看phpinfo,成功的话能够看到以下信息
memcache
memcache support enabled
Version 3.0.9-dev
Revision $Revision$

5.测试使用memcache

$mem = new Memcache;
$mem->connect("127.0.0.1", 11211);
$mem->set('key', 'This is a test!', 0, 60);
$val = $mem->get('key');

echo $val;

顺利看到 This is a test!
至此,成功实现windows10+phpstudy+php7安装使用memcache!

其他补充:windows全局变量设置比如path中添加:"D:/phpStudy/php/php-7.0.12-nts/ext"

先贴代码(mysql类部分代码)

public function delDataBase($database){
    if (!$this->con){
        die('数据库连接错误'.mysqli_error($this->con));
    }

    $sql = 'DROP DATABASE if exists '.$database;
    $res = mysqli_query($this->con,$sql);

    //exit(var_dump($res));
    if (!$res){
        die('数据库删除失败'.mysqli_error($this->con));
    }
    echo '数据库'.$database.'删除成功!';
}

调用delDataBase方法,传入一个不存在的数据库,无报错,直接echo数据库xx删除成功,exit(var_dump($res))值为true。
删除数据库的时候如果传值错误,没有仔细检查是否真实删除,很容易留下隐患。
暂时解决思路是:查询出来所有的数据库,然后判断是否含有要删除的数据库

 $sql = 'SHOW DATABASES';
        $res = mysqli_query($this->con,$sql);
        $array = [];
        if ($res){
            $array = mysqli_fetch_all($res,MYSQLI_ASSOC);
        }
        $dbs = [];
        foreach ($array as $k=>$v){
            foreach ($v as $key=>$value){
                $dbs[] = $value;
            }
        }
        return $dbs;

1.问题描述:
yii2中使用querylist的百度搜索插件,出现php报错curl_setopt_array(): Unable to create temporary file,

2.使用echo sys_get_temp_dir();获得系统临时文件位置:C:windows\

3.修改php.ini
打开本地的php 下的 php.ini 文件 ,找到 sys_temp_dir='./tmp' 的配置项,将前面的分号 ; 注释去掉
改为 E:phpStudytmptmp;重启phpstudy,问题解决了!

zblog作为国内一款优秀的php开源系统(当然也是有asp的版本的,并且最初也是asp版的),堪称中国版的wordpress,国内市场广泛得到使用,其中最著名的也许就是大名鼎鼎的月光博客以及卢松松博客(哦……没错,都是博客……),学习研究和使用zblog很有必要。作为开篇以及起步,先来看一下zblog的目录结构(或者成为文件结构):

zblog系统文件结构

zb_install 安装文件夹
zb_system 系统文件夹
    admin 管理
    css 后台CSS
    defend 系统保留文档
    function 系统核心
    image 系统图片
    script 系统脚本
    xml-rpc xml-rpc组件
zb_users 用户文件夹
    avatar 头像缓存
    cache 缓存
    data 数据库
    emotion 表情图片
    include 引用文件
    language 语言
    plugin 插件
    theme 主题
    upload 上传
index.php 主页
search.php 搜索面
feed.php rss页

Yii2是一款非常优秀的php开发框架,足够出色,学习曲线并不是很高,适合高效率开发需求。本文仅以安装配置yii2高级版为例,记录说明使用composer安装配置yii2。
一、composer方式安装
php版本>=5.4
1.安装composer
下载Composer并安装.--环境变量设置
如果composer安装成功:
执行composer self-update命令更新Composer为最新版本,
然后进入你要安装yii的有效web目录(www目录下)

2.composer安装yii

基础版
composer create-project --prefer-dist yiisoft/yii2-app-basic yii
高级版
composer create-project --prefer-dist yiisoft/yii2-app-advanced yii
注: yii是在www下新建yii目录,可根据需要自定
关联点 :输入github账户的Token
登录github.com ---settings---Personal access tokens---

3.进入当前安装目录,初始化 执行 init

4.配置数据库 common/config/main-local.php
执行 yii migrate
创建user、migration表

5.url和汉化
去掉index.php
形式: web/controller/action/params
.htaccess
Options +FollowSymLinks
IndexIgnore /
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

otherwise forward it to index.php

RewriteRule . index.php
注:
上述htaccess要存放在frontend和backend的web下各一份,否则访问前台时候会跳到后台模块(根目录配置htaccess rewriterule. backend/web/index.php的情况下)
(这是为了隐藏 Index.php,apache必须要开启rewrite模块)

下面的urlManager配置在common/main.php

'components'=>[]中添加
'urlManager'=>[

        'enablePrettyUrl'=> true,
        'enableStrictParsing'=> false,//严格解析,要求当前请求至少匹配一个路由规则,否则判定为无效路由
        'showScriptName'=>false,//是否显示入口文件
        'suffix'=>'',//后缀自定义如.html
        'rules'=>[
            "<controller:\w+>/<id:\d+>"=>"<controller>/view",
            "<controller:\w+>/<action:\w+>/<id:\d+>"=>"<controller>/<action>",
            "<controller:\w+>/<action:\w+>"=>"<controller>/<action>"       
        ]
    ],

配置
'language'=>'zh-CN',
//'sourceLanguage'=>'zh-CN',
sourceLanguage 代表你的数据源语言标记
language 表示当前语言标记

6.admin、adminLTE
http://www.yiichina.com/tutorial/876
其中adminLTE生成权限数据表4张
cmd 到安装目录
安装adminLTE
composer require dmstr/yii2-adminlte-asset "2.*"
复制 vendor/dmstr/yii2-adminlte-asset/example-views/yiisoft/yii2-app 到 backend/views/,需要覆盖的则覆盖
注:可理解为adminLTE只是模板

安装admin
项目目录下执行
composer require mdmsoft/yii2-admin "2.x-dev"

配置 backend/config/main.php 文件
"modules" => [

"admin" => [
    "class" => "mdm\admin\Module",
],

],
"aliases" => [

"@mdm/admin" => "@vendor/mdmsoft/yii2-admin",

],
'as access' => [

'class' => 'mdm\admin\components\AccessControl',
'allowActions' => [
    //这里是允许访问的action
    //controller/action
// * 表示允许所有,后期会介绍这个
    '*'
]

],
'components' => [

"authManager" => [
    "class" => 'yii\rbac\DbManager',
    "defaultRoles" => ["guest"],
],

],

7、导入 rbac 表格
执行.sql 文件:vendor/yiisoft/yii2/rbac/migrations/schema-mysql.sql/ ?
cmd如何执行?
console配置组件中添加
'authManager'=>[

        'class'=>'yii\rbac\DbManager',
        'itemTable'=>'{{%auth_item}}',
        'itemChildTable'=>'{{%auth_item_child}}',
        'assignmentTable'=>'{{%auth_assignment}}',
        'ruleTable'=>'{{%auth_rule}}',
        'defaultRoles'=>['default'],
    ],

php yii migrate --migrationPath=@yii/rbac/migrations
生成四张表如下:

8、
前台注册用户
运行 127.0.0.1/advanced/backend/web/admin/route 预览效果

9、关于gii
MVC功能模块开发
数据库字典设计,sql语句,生成tables
gii生成
model、controller、view基础模板
修改MVC细节优化

模型、控制器方法添加
对应views修改

其他:
安装时间控件
composer require kartik-v/yii2-widget-datetimepicker "*"(优先)

composer require kartik-v/yii2-widget-timepicker "*"

补充:
地区选择插件
composer require chenkby/yii2-region "dev-master"

'options' => ['class' => 'form-horizontal'],

  'fieldConfig' => [
      'template' => "<div class='col-xs-3 col-sm-2 text-right'>{label}</div><div class='col-xs-9 col-sm-7'>{input}</div><div class='col-xs-12 col-xs-offset-3 col-sm-3 col-sm-offset-0'>{error}</div>",

Echarts插件
composer require --prefer-dist daixianceng/yii2-echarts "*"
composer require daixianceng/yii2-echarts "*"
--prefer-dist 为了强制使用压缩包,而不是克隆源代码。
composer require bower-asset/echarts "*"

ueditor
composer require kucha/ueditor "*"

至此,yii2高级版安装和初始设置完毕,开始你的yii2高效开发旅程!