Yii2 - Centos 6.* / 7.*下通过yum安装php7
鸿宇 发表了文章 • 0 个评论 • 1867 次浏览 • 2017-05-07 23:34
官方出品:鸿宇科技
官方论坛:bbs.hongyuvip.com
官方QQ群:90664526
查看 centos 版本# cat /etc/centos-release
删除之前的 php 版本# yum remove php* php-common
rpm 安装 Php7 相应的 yum源
CentOS/RHEL 7.x:# rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
CentOS/RHEL 6.x:# rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm
yum安装php7# yum install php70w php70w-opcache
php7可选安装# yum install php70-php php70-php-pear php70-php-bcmath php70-php-pecl-jsond-devel php70-php-mysqlnd php70-php-gd php70-php-common php70-php-fpm php70-php-intl php70-php-cli php70-php php70-php-xml php70-php-opcache php70-php-pecl-apcu php70-php-pecl-jsond php70-php-pdo php70-php-gmp php70-php-process php70-php-pecl-imagick php70-php-devel php70-php-mbstring php70-php-mcrypt
安装其他插件列表(选装)php70w
php70w-bcmath
php70w-cli
php70w-common
php70w-dba
php70w-devel
php70w-embedded
php70w-enchant
php70w-fpm
php70w-gd
php70w-imap
php70w-interbase
php70w-intl
php70w-ldap
php70w-mbstring
php70w-mcrypt
php70w-mysql
php70w-mysqlnd
php70w-odbc
php70w-opcache
php70w-pdo
php70w-pdo_dblib
php70w-pear
php70w-pecl-apcu
php70w-pecl-imagick
php70w-pecl-xdebug
php70w-pgsql
php70w-phpdbg
php70w-process
php70w-pspell
php70w-recode
php70w-snmp
php70w-soap
php70w-tidy
php70w-xml
php70w-xmlrpc
重启 Apache# service httpd restart
查看全部
官方论坛:bbs.hongyuvip.com
官方QQ群:90664526
查看 centos 版本# cat /etc/centos-release
删除之前的 php 版本# yum remove php* php-common
rpm 安装 Php7 相应的 yum源
CentOS/RHEL 7.x:# rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
CentOS/RHEL 6.x:# rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm
yum安装php7# yum install php70w php70w-opcache
php7可选安装# yum install php70-php php70-php-pear php70-php-bcmath php70-php-pecl-jsond-devel php70-php-mysqlnd php70-php-gd php70-php-common php70-php-fpm php70-php-intl php70-php-cli php70-php php70-php-xml php70-php-opcache php70-php-pecl-apcu php70-php-pecl-jsond php70-php-pdo php70-php-gmp php70-php-process php70-php-pecl-imagick php70-php-devel php70-php-mbstring php70-php-mcrypt
安装其他插件列表(选装)php70w
php70w-bcmath
php70w-cli
php70w-common
php70w-dba
php70w-devel
php70w-embedded
php70w-enchant
php70w-fpm
php70w-gd
php70w-imap
php70w-interbase
php70w-intl
php70w-ldap
php70w-mbstring
php70w-mcrypt
php70w-mysql
php70w-mysqlnd
php70w-odbc
php70w-opcache
php70w-pdo
php70w-pdo_dblib
php70w-pear
php70w-pecl-apcu
php70w-pecl-imagick
php70w-pecl-xdebug
php70w-pgsql
php70w-phpdbg
php70w-process
php70w-pspell
php70w-recode
php70w-snmp
php70w-soap
php70w-tidy
php70w-xml
php70w-xmlrpc
重启 Apache# service httpd restart
查看全部
官方出品:鸿宇科技
官方论坛:bbs.hongyuvip.com
官方QQ群:90664526
查看 centos 版本
删除之前的 php 版本
rpm 安装 Php7 相应的 yum源
CentOS/RHEL 7.x:
CentOS/RHEL 6.x:
yum安装php7
php7可选安装
安装其他插件列表(选装)
重启 Apache
官方论坛:bbs.hongyuvip.com
官方QQ群:90664526
查看 centos 版本
# cat /etc/centos-release
删除之前的 php 版本
# yum remove php* php-common
rpm 安装 Php7 相应的 yum源
CentOS/RHEL 7.x:
# rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
CentOS/RHEL 6.x:
# rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm
yum安装php7
# yum install php70w php70w-opcache
php7可选安装
# yum install php70-php php70-php-pear php70-php-bcmath php70-php-pecl-jsond-devel php70-php-mysqlnd php70-php-gd php70-php-common php70-php-fpm php70-php-intl php70-php-cli php70-php php70-php-xml php70-php-opcache php70-php-pecl-apcu php70-php-pecl-jsond php70-php-pdo php70-php-gmp php70-php-process php70-php-pecl-imagick php70-php-devel php70-php-mbstring php70-php-mcrypt
安装其他插件列表(选装)
php70w
php70w-bcmath
php70w-cli
php70w-common
php70w-dba
php70w-devel
php70w-embedded
php70w-enchant
php70w-fpm
php70w-gd
php70w-imap
php70w-interbase
php70w-intl
php70w-ldap
php70w-mbstring
php70w-mcrypt
php70w-mysql
php70w-mysqlnd
php70w-odbc
php70w-opcache
php70w-pdo
php70w-pdo_dblib
php70w-pear
php70w-pecl-apcu
php70w-pecl-imagick
php70w-pecl-xdebug
php70w-pgsql
php70w-phpdbg
php70w-process
php70w-pspell
php70w-recode
php70w-snmp
php70w-soap
php70w-tidy
php70w-xml
php70w-xmlrpc
重启 Apache
# service httpd restart
Yii2 - Linux安装使用Composer
鸿宇 发表了文章 • 0 个评论 • 2085 次浏览 • 2016-12-20 16:52
Composer 是 PHP 的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。Composer 不是一个包管理器。它在每个项目的基础上进行管理,在你项目的某个目录中进行安装。默认情况下它不会在全局安装任何东西。因此,这仅仅是一个依赖管理。
Composer 将这样为你解决问题:
a) 你有一个项目依赖于若干个库。
b) 其中一些库依赖于其他库。
c) 你声明你所依赖的东西。
d) Composer 会找出哪个版本的包需要安装,并安装它们(将它们下载到你的项目中)。
Composer 是多平台的,我们努力使它在 Windows 、 Linux 以及 OSX 平台上运行的同样出色。
安装Composer
1、将composer.phar下载到项目中
使用下面命令下载Composer 的二进制文件,是一个 PHAR 包(PHP 的归档)curl -sS https://getcomposer.org/installer | php
* 可以通过 --install-dir 选项指定 Composer 的安装目录(它可以是一个绝对或相对路径):curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin/composer
2、如果把composer.phar放在系统的 PATH 目录中,就能在全局访问composer.phar。 在类Unix系统中,你甚至可以在使用时不加 php 前缀。可以执行这些命令让 composer 在你的系统中进行全局调用:mv composer.phar /usr/local/bin/composer
现在只需要运行 composer 命令就可以使用 Composer 而不需要输入 php composer.phar。
3、检查 Composer 是否正常工作,只需要通过 php 来执行 PHAR:php composer.phar这将返回给你一个可执行的命令列表。
4、查看当前 Composer镜像地址
composer config –gl
[repositories.packagist.org.url] https://packagist.phpcomposer.com
使用 Composer
要在项目中使用 Composer,只需要一个 composer.json 文件。该文件包含了项目的依赖和其它的一些元数据。现在使用 Composer 来安装项目的依赖。
1、创建 composer.json 文件
在当前目录下创建 composer.json 文件,在 composer.json 文件中指定 require key 的值。简单的告诉 Composer 你的项目需要依赖哪些包。
例如:{
"require":
{
"monolog/monolog": "1.0.*"
}
}
可以看到, require 需要一个 包名称 monolog/monolog映射到 包版本 1.0.*的对象。包名称由供应商名称和其项目名称构成。
2、安装依赖包
执行 install 命令获取定义的依赖到本地项目:php composer.phar install
如果你进行了全局安装,并且没有 phar 文件在当前目录,使用下面的命令代替:composer install
这将会找到 monolog/monolog 的最新版本,并将它下载到 vendor 目录。 这是一个惯例把第三方的代码到一个指定的目录 vendor。如果是 monolog 将会创建 vendor/monolog/monolog 目录。
注意: install 命令将创建一个 composer.lock 文件到你项目的根目录中。
3、自动加载
除了库的下载,Composer 还准备了一个自动加载文件,它可以加载 Composer 下载的库中所有的类文件。使用它,你只需要将下面这行代码添加到你项目的引导文件中:require 'vendor/autoload.php';
现在我们就可以使用 monolog 了 查看全部
Composer 将这样为你解决问题:
a) 你有一个项目依赖于若干个库。
b) 其中一些库依赖于其他库。
c) 你声明你所依赖的东西。
d) Composer 会找出哪个版本的包需要安装,并安装它们(将它们下载到你的项目中)。
Composer 是多平台的,我们努力使它在 Windows 、 Linux 以及 OSX 平台上运行的同样出色。
安装Composer
1、将composer.phar下载到项目中
使用下面命令下载Composer 的二进制文件,是一个 PHAR 包(PHP 的归档)curl -sS https://getcomposer.org/installer | php
* 可以通过 --install-dir 选项指定 Composer 的安装目录(它可以是一个绝对或相对路径):curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin/composer
2、如果把composer.phar放在系统的 PATH 目录中,就能在全局访问composer.phar。 在类Unix系统中,你甚至可以在使用时不加 php 前缀。可以执行这些命令让 composer 在你的系统中进行全局调用:mv composer.phar /usr/local/bin/composer
现在只需要运行 composer 命令就可以使用 Composer 而不需要输入 php composer.phar。
3、检查 Composer 是否正常工作,只需要通过 php 来执行 PHAR:php composer.phar这将返回给你一个可执行的命令列表。
4、查看当前 Composer镜像地址
composer config –gl
[repositories.packagist.org.url] https://packagist.phpcomposer.com
使用 Composer
要在项目中使用 Composer,只需要一个 composer.json 文件。该文件包含了项目的依赖和其它的一些元数据。现在使用 Composer 来安装项目的依赖。
1、创建 composer.json 文件
在当前目录下创建 composer.json 文件,在 composer.json 文件中指定 require key 的值。简单的告诉 Composer 你的项目需要依赖哪些包。
例如:{
"require":
{
"monolog/monolog": "1.0.*"
}
}
可以看到, require 需要一个 包名称 monolog/monolog映射到 包版本 1.0.*的对象。包名称由供应商名称和其项目名称构成。
2、安装依赖包
执行 install 命令获取定义的依赖到本地项目:php composer.phar install
如果你进行了全局安装,并且没有 phar 文件在当前目录,使用下面的命令代替:composer install
这将会找到 monolog/monolog 的最新版本,并将它下载到 vendor 目录。 这是一个惯例把第三方的代码到一个指定的目录 vendor。如果是 monolog 将会创建 vendor/monolog/monolog 目录。
注意: install 命令将创建一个 composer.lock 文件到你项目的根目录中。
3、自动加载
除了库的下载,Composer 还准备了一个自动加载文件,它可以加载 Composer 下载的库中所有的类文件。使用它,你只需要将下面这行代码添加到你项目的引导文件中:require 'vendor/autoload.php';
现在我们就可以使用 monolog 了 查看全部
Composer 是 PHP 的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。Composer 不是一个包管理器。它在每个项目的基础上进行管理,在你项目的某个目录中进行安装。默认情况下它不会在全局安装任何东西。因此,这仅仅是一个依赖管理。
Composer 将这样为你解决问题:
a) 你有一个项目依赖于若干个库。
b) 其中一些库依赖于其他库。
c) 你声明你所依赖的东西。
d) Composer 会找出哪个版本的包需要安装,并安装它们(将它们下载到你的项目中)。
Composer 是多平台的,我们努力使它在 Windows 、 Linux 以及 OSX 平台上运行的同样出色。
安装Composer
1、将composer.phar下载到项目中
使用下面命令下载Composer 的二进制文件,是一个 PHAR 包(PHP 的归档)
* 可以通过 --install-dir 选项指定 Composer 的安装目录(它可以是一个绝对或相对路径):
2、如果把composer.phar放在系统的 PATH 目录中,就能在全局访问composer.phar。 在类Unix系统中,你甚至可以在使用时不加 php 前缀。可以执行这些命令让 composer 在你的系统中进行全局调用:
现在只需要运行 composer 命令就可以使用 Composer 而不需要输入 php composer.phar。
3、检查 Composer 是否正常工作,只需要通过 php 来执行 PHAR:php composer.phar这将返回给你一个可执行的命令列表。
4、查看当前 Composer镜像地址
使用 Composer
要在项目中使用 Composer,只需要一个 composer.json 文件。该文件包含了项目的依赖和其它的一些元数据。现在使用 Composer 来安装项目的依赖。
1、创建 composer.json 文件
在当前目录下创建 composer.json 文件,在 composer.json 文件中指定 require key 的值。简单的告诉 Composer 你的项目需要依赖哪些包。
例如:
可以看到, require 需要一个 包名称 monolog/monolog映射到 包版本 1.0.*的对象。包名称由供应商名称和其项目名称构成。
2、安装依赖包
执行 install 命令获取定义的依赖到本地项目:
如果你进行了全局安装,并且没有 phar 文件在当前目录,使用下面的命令代替:
这将会找到 monolog/monolog 的最新版本,并将它下载到 vendor 目录。 这是一个惯例把第三方的代码到一个指定的目录 vendor。如果是 monolog 将会创建 vendor/monolog/monolog 目录。
注意: install 命令将创建一个 composer.lock 文件到你项目的根目录中。
3、自动加载
除了库的下载,Composer 还准备了一个自动加载文件,它可以加载 Composer 下载的库中所有的类文件。使用它,你只需要将下面这行代码添加到你项目的引导文件中:
现在我们就可以使用 monolog 了
Composer 将这样为你解决问题:
a) 你有一个项目依赖于若干个库。
b) 其中一些库依赖于其他库。
c) 你声明你所依赖的东西。
d) Composer 会找出哪个版本的包需要安装,并安装它们(将它们下载到你的项目中)。
Composer 是多平台的,我们努力使它在 Windows 、 Linux 以及 OSX 平台上运行的同样出色。
安装Composer
1、将composer.phar下载到项目中
使用下面命令下载Composer 的二进制文件,是一个 PHAR 包(PHP 的归档)
curl -sS https://getcomposer.org/installer | php
* 可以通过 --install-dir 选项指定 Composer 的安装目录(它可以是一个绝对或相对路径):
curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin/composer
2、如果把composer.phar放在系统的 PATH 目录中,就能在全局访问composer.phar。 在类Unix系统中,你甚至可以在使用时不加 php 前缀。可以执行这些命令让 composer 在你的系统中进行全局调用:
mv composer.phar /usr/local/bin/composer
现在只需要运行 composer 命令就可以使用 Composer 而不需要输入 php composer.phar。
3、检查 Composer 是否正常工作,只需要通过 php 来执行 PHAR:php composer.phar这将返回给你一个可执行的命令列表。
4、查看当前 Composer镜像地址
composer config –gl
[repositories.packagist.org.url] https://packagist.phpcomposer.com
使用 Composer
要在项目中使用 Composer,只需要一个 composer.json 文件。该文件包含了项目的依赖和其它的一些元数据。现在使用 Composer 来安装项目的依赖。
1、创建 composer.json 文件
在当前目录下创建 composer.json 文件,在 composer.json 文件中指定 require key 的值。简单的告诉 Composer 你的项目需要依赖哪些包。
例如:
{
"require":
{
"monolog/monolog": "1.0.*"
}
}
可以看到, require 需要一个 包名称 monolog/monolog映射到 包版本 1.0.*的对象。包名称由供应商名称和其项目名称构成。
2、安装依赖包
执行 install 命令获取定义的依赖到本地项目:
php composer.phar install
如果你进行了全局安装,并且没有 phar 文件在当前目录,使用下面的命令代替:
composer install
这将会找到 monolog/monolog 的最新版本,并将它下载到 vendor 目录。 这是一个惯例把第三方的代码到一个指定的目录 vendor。如果是 monolog 将会创建 vendor/monolog/monolog 目录。
注意: install 命令将创建一个 composer.lock 文件到你项目的根目录中。
3、自动加载
除了库的下载,Composer 还准备了一个自动加载文件,它可以加载 Composer 下载的库中所有的类文件。使用它,你只需要将下面这行代码添加到你项目的引导文件中:
require 'vendor/autoload.php';
现在我们就可以使用 monolog 了
Yii2 - PHP获取服务器详细信息函数
鸿宇 发表了文章 • 0 个评论 • 3907 次浏览 • 2016-12-10 20:23
PHP获取服务器信息函数
获取系统类型及版本号: php_uname() (例:Windows NT COMPUTER 5.1 build 2600)
只获取系统类型: php_uname('s') (或:PHP_OS,例:Windows NT)
只获取系统版本号: php_uname('r')
获取PHP运行方式: php_sapi_name() (PHP run mode:apache2handler)
获取前进程用户名: Get_Current_User()
获取PHP版本: PHP_VERSION
获取Zend版本: Zend_Version()
获取PHP安装路径: DEFAULT_INCLUDE_PATH
获取当前文件绝对路径: __FILE__
获取Http请求中Host值: $_SERVER["HTTP_HOST"] (返回值为域名或IP)
获取服务器IP: GetHostByName($_SERVER['SERVER_NAME'])
接受请求的服务器IP: $_SERVER["SERVER_ADDR"] (有时候获取不到,推荐用:GetHostByName($_SERVER['SERVER_NAME']))
获取客户端IP: $_SERVER['REMOTE_ADDR']
获取服务器解译引擎: $_SERVER['SERVER_SOFTWARE']
获取服务器CPU数量: $_SERVER['PROCESSOR_IDENTIFIER']
获取服务器系统目录: $_SERVER['SystemRoot']
获取服务器域名:$_SERVER['SERVER_NAME'] (建议使用:$_SERVER["HTTP_HOST"])
获取用户域名: $_SERVER['USERDOMAIN']
获取服务器语言: $_SERVER['HTTP_ACCEPT_LANGUAGE']获取服务器Web端口: $_SERVER['SERVER_PORT']
最大上传限制: ini_get('upload_max_filesize')
附录:(Yii2.0获取系统信息)
系统名称:Yii::$app->name
系统版本:Yii::$app->version
MySQL版本:Yii::$app->db->pdo->getAttribute(\PDO::ATTR_SERVER_VERSION)
查看全部
获取系统类型及版本号: php_uname() (例:Windows NT COMPUTER 5.1 build 2600)
只获取系统类型: php_uname('s') (或:PHP_OS,例:Windows NT)
只获取系统版本号: php_uname('r')
获取PHP运行方式: php_sapi_name() (PHP run mode:apache2handler)
获取前进程用户名: Get_Current_User()
获取PHP版本: PHP_VERSION
获取Zend版本: Zend_Version()
获取PHP安装路径: DEFAULT_INCLUDE_PATH
获取当前文件绝对路径: __FILE__
获取Http请求中Host值: $_SERVER["HTTP_HOST"] (返回值为域名或IP)
获取服务器IP: GetHostByName($_SERVER['SERVER_NAME'])
接受请求的服务器IP: $_SERVER["SERVER_ADDR"] (有时候获取不到,推荐用:GetHostByName($_SERVER['SERVER_NAME']))
获取客户端IP: $_SERVER['REMOTE_ADDR']
获取服务器解译引擎: $_SERVER['SERVER_SOFTWARE']
获取服务器CPU数量: $_SERVER['PROCESSOR_IDENTIFIER']
获取服务器系统目录: $_SERVER['SystemRoot']
获取服务器域名:$_SERVER['SERVER_NAME'] (建议使用:$_SERVER["HTTP_HOST"])
获取用户域名: $_SERVER['USERDOMAIN']
获取服务器语言: $_SERVER['HTTP_ACCEPT_LANGUAGE']获取服务器Web端口: $_SERVER['SERVER_PORT']
最大上传限制: ini_get('upload_max_filesize')
附录:(Yii2.0获取系统信息)
系统名称:Yii::$app->name
系统版本:Yii::$app->version
MySQL版本:Yii::$app->db->pdo->getAttribute(\PDO::ATTR_SERVER_VERSION)
查看全部
PHP获取服务器信息函数
获取系统类型及版本号: php_uname() (例:Windows NT COMPUTER 5.1 build 2600)
只获取系统类型: php_uname('s') (或:PHP_OS,例:Windows NT)
只获取系统版本号: php_uname('r')
获取PHP运行方式: php_sapi_name() (PHP run mode:apache2handler)
获取前进程用户名: Get_Current_User()
获取PHP版本: PHP_VERSION
获取Zend版本: Zend_Version()
获取PHP安装路径: DEFAULT_INCLUDE_PATH
获取当前文件绝对路径: __FILE__
获取Http请求中Host值: $_SERVER["HTTP_HOST"] (返回值为域名或IP)
获取服务器IP: GetHostByName($_SERVER['SERVER_NAME'])
接受请求的服务器IP: $_SERVER["SERVER_ADDR"] (有时候获取不到,推荐用:GetHostByName($_SERVER['SERVER_NAME']))
获取客户端IP: $_SERVER['REMOTE_ADDR']
获取服务器解译引擎: $_SERVER['SERVER_SOFTWARE']
获取服务器CPU数量: $_SERVER['PROCESSOR_IDENTIFIER']
获取服务器系统目录: $_SERVER['SystemRoot']
获取服务器域名:$_SERVER['SERVER_NAME'] (建议使用:$_SERVER["HTTP_HOST"])
获取用户域名: $_SERVER['USERDOMAIN']
获取服务器语言: $_SERVER['HTTP_ACCEPT_LANGUAGE']获取服务器Web端口: $_SERVER['SERVER_PORT']
最大上传限制: ini_get('upload_max_filesize')
附录:(Yii2.0获取系统信息)
系统名称:Yii::$app->name
系统版本:Yii::$app->version
MySQL版本:Yii::$app->db->pdo->getAttribute(\PDO::ATTR_SERVER_VERSION)
获取系统类型及版本号: php_uname() (例:Windows NT COMPUTER 5.1 build 2600)
只获取系统类型: php_uname('s') (或:PHP_OS,例:Windows NT)
只获取系统版本号: php_uname('r')
获取PHP运行方式: php_sapi_name() (PHP run mode:apache2handler)
获取前进程用户名: Get_Current_User()
获取PHP版本: PHP_VERSION
获取Zend版本: Zend_Version()
获取PHP安装路径: DEFAULT_INCLUDE_PATH
获取当前文件绝对路径: __FILE__
获取Http请求中Host值: $_SERVER["HTTP_HOST"] (返回值为域名或IP)
获取服务器IP: GetHostByName($_SERVER['SERVER_NAME'])
接受请求的服务器IP: $_SERVER["SERVER_ADDR"] (有时候获取不到,推荐用:GetHostByName($_SERVER['SERVER_NAME']))
获取客户端IP: $_SERVER['REMOTE_ADDR']
获取服务器解译引擎: $_SERVER['SERVER_SOFTWARE']
获取服务器CPU数量: $_SERVER['PROCESSOR_IDENTIFIER']
获取服务器系统目录: $_SERVER['SystemRoot']
获取服务器域名:$_SERVER['SERVER_NAME'] (建议使用:$_SERVER["HTTP_HOST"])
获取用户域名: $_SERVER['USERDOMAIN']
获取服务器语言: $_SERVER['HTTP_ACCEPT_LANGUAGE']获取服务器Web端口: $_SERVER['SERVER_PORT']
最大上传限制: ini_get('upload_max_filesize')
附录:(Yii2.0获取系统信息)
系统名称:Yii::$app->name
系统版本:Yii::$app->version
MySQL版本:Yii::$app->db->pdo->getAttribute(\PDO::ATTR_SERVER_VERSION)
Yii2 - (七)规则的讲解
鸿宇 发表了文章 • 0 个评论 • 1898 次浏览 • 2016-10-15 23:01
需求:普通管理员只可以查看修改自己的信息,而站长可以修改所有人的信息
一、用 gii 生成 user 模型和 CRUD 操作
二、创建“管理用户”和”规则“菜单
1、点击“路由”,然后点击
,即可以看到多了刚刚生成的 userController 的路由
将 /user/* 和 /user/index 移动至右边
将 /admin/rule/* 和 /admin/rule/index 也移动至右边,待会创建 “规则” 菜单
2、点击“菜单”创建以下菜单
三、添加“规则”(路由)给“权限控制”(权限)
1、点击“权限”然后进行创建“管理用户”的权限
2、点击“权限”,然后再点击”权限控制“的查看按钮,将 /admin/rule/* 移至右边
3、点击“角色”,为“站长”和“普通管理员”添加“管理用户”的权限
四、为“普通管理员”添加“修改用户”的规则
1、新建“修改用户”的规则
① 新建 backend\components\UserRule 这个类文件
② 刷新页面,左侧菜单出现“规则”的菜单,点击“规则”创建“修改用户”的规则
2、为“普通管理员”添加“修改用户”的规则
点击“角色”,再点击“普通管理员”的更新按钮
打开 auth_item 表,可以发现“普通管理员”这个记录被修改了
五、测试“修改用户”的规则是否发挥作用
1、登录 master 站长,点击“管理用户”,再点击 admin 修改的按钮,发现可以修改
2、登录 admin 普通管理员,点击“管理用户”,再点击 master 修改的按钮,发现无法可以修改
表明“修改用户”的规则对“普通管理员”这个角色发挥作用了。
注意:测试时务必把 \backend\main.php 的 * 注释掉
查看全部
一、用 gii 生成 user 模型和 CRUD 操作
二、创建“管理用户”和”规则“菜单
1、点击“路由”,然后点击
,即可以看到多了刚刚生成的 userController 的路由
将 /user/* 和 /user/index 移动至右边
将 /admin/rule/* 和 /admin/rule/index 也移动至右边,待会创建 “规则” 菜单
2、点击“菜单”创建以下菜单
三、添加“规则”(路由)给“权限控制”(权限)
1、点击“权限”然后进行创建“管理用户”的权限
2、点击“权限”,然后再点击”权限控制“的查看按钮,将 /admin/rule/* 移至右边
3、点击“角色”,为“站长”和“普通管理员”添加“管理用户”的权限
四、为“普通管理员”添加“修改用户”的规则
1、新建“修改用户”的规则
① 新建 backend\components\UserRule 这个类文件
② 刷新页面,左侧菜单出现“规则”的菜单,点击“规则”创建“修改用户”的规则
2、为“普通管理员”添加“修改用户”的规则
点击“角色”,再点击“普通管理员”的更新按钮
打开 auth_item 表,可以发现“普通管理员”这个记录被修改了
五、测试“修改用户”的规则是否发挥作用
1、登录 master 站长,点击“管理用户”,再点击 admin 修改的按钮,发现可以修改
2、登录 admin 普通管理员,点击“管理用户”,再点击 master 修改的按钮,发现无法可以修改
表明“修改用户”的规则对“普通管理员”这个角色发挥作用了。
注意:测试时务必把 \backend\main.php 的 * 注释掉
查看全部
需求:普通管理员只可以查看修改自己的信息,而站长可以修改所有人的信息
一、用 gii 生成 user 模型和 CRUD 操作
二、创建“管理用户”和”规则“菜单
1、点击“路由”,然后点击 ,即可以看到多了刚刚生成的 userController 的路由
将 /user/* 和 /user/index 移动至右边
将 /admin/rule/* 和 /admin/rule/index 也移动至右边,待会创建 “规则” 菜单
2、点击“菜单”创建以下菜单
三、添加“规则”(路由)给“权限控制”(权限)
1、点击“权限”然后进行创建“管理用户”的权限
2、点击“权限”,然后再点击”权限控制“的查看按钮,将 /admin/rule/* 移至右边
3、点击“角色”,为“站长”和“普通管理员”添加“管理用户”的权限
四、为“普通管理员”添加“修改用户”的规则
1、新建“修改用户”的规则
① 新建 backend\components\UserRule 这个类文件
② 刷新页面,左侧菜单出现“规则”的菜单,点击“规则”创建“修改用户”的规则
2、为“普通管理员”添加“修改用户”的规则
点击“角色”,再点击“普通管理员”的更新按钮
打开 auth_item 表,可以发现“普通管理员”这个记录被修改了
五、测试“修改用户”的规则是否发挥作用
1、登录 master 站长,点击“管理用户”,再点击 admin 修改的按钮,发现可以修改
2、登录 admin 普通管理员,点击“管理用户”,再点击 master 修改的按钮,发现无法可以修改
表明“修改用户”的规则对“普通管理员”这个角色发挥作用了。
注意:测试时务必把 \backend\main.php 的 * 注释掉
一、用 gii 生成 user 模型和 CRUD 操作
二、创建“管理用户”和”规则“菜单
1、点击“路由”,然后点击 ,即可以看到多了刚刚生成的 userController 的路由
将 /user/* 和 /user/index 移动至右边
将 /admin/rule/* 和 /admin/rule/index 也移动至右边,待会创建 “规则” 菜单
2、点击“菜单”创建以下菜单
三、添加“规则”(路由)给“权限控制”(权限)
1、点击“权限”然后进行创建“管理用户”的权限
2、点击“权限”,然后再点击”权限控制“的查看按钮,将 /admin/rule/* 移至右边
3、点击“角色”,为“站长”和“普通管理员”添加“管理用户”的权限
四、为“普通管理员”添加“修改用户”的规则
1、新建“修改用户”的规则
① 新建 backend\components\UserRule 这个类文件
② 刷新页面,左侧菜单出现“规则”的菜单,点击“规则”创建“修改用户”的规则
2、为“普通管理员”添加“修改用户”的规则
点击“角色”,再点击“普通管理员”的更新按钮
打开 auth_item 表,可以发现“普通管理员”这个记录被修改了
五、测试“修改用户”的规则是否发挥作用
1、登录 master 站长,点击“管理用户”,再点击 admin 修改的按钮,发现可以修改
2、登录 admin 普通管理员,点击“管理用户”,再点击 master 修改的按钮,发现无法可以修改
表明“修改用户”的规则对“普通管理员”这个角色发挥作用了。
注意:测试时务必把 \backend\main.php 的 * 注释掉
Yii2 - (六)rbac效果预览
鸿宇 发表了文章 • 0 个评论 • 1827 次浏览 • 2016-10-15 22:54
效果:“普通管理员”可以进行gii和debug的操作,而“站长”除了可以进行gii和debug的操作,还可以进行“权限控制”的操作。
一、创建“调试”的权限:可以进行 gii 和 degug 的操作
1、点击“路由”,将 /gii/ 、/gii/default/index、/debug/ 、/degug/default/index 写入到 auth_item 表
2、点击“权限”,创建名为“调试”的权限,并分配 /gii/ 和 /debug/ 路由
3、点击“角色”,创建名为“普通管理员”的角色,并分配“调式”的权限
二、创建“调式”的菜单
1、创建
gii 菜单:Parent —— 调式;Name —— gii;Route —— /gii/default/index;Order —— 1
debug 菜单:Parent —— 调式;Name —— debug;Route —— /debug/default/index;Order —— 2
2、分配“调式“权限给”站长“角色
3、刷新页面,你会发现左侧导航栏多了调式的菜单
三、创建“普通管理员“角色的新用户
1、进入前台 127.0.0.1/advanced/frontend/web 进行注册新用户
2、进入后台 127.0.0.1/advanced/backend/web/admin/assignment/index
点击 admin 的查看按钮,为 admin 分配普通管理员的角色
3、刷新页面,你会发现 admin 用户也多了 调试的菜单
四、rbac 的作用
1、在步骤三、2中 admin 用户通过 输入地址:127.0.0.1/advanced/backend/web/admin/assignment 进入分配角色的页面,现在我们通过配置限制用户访问,配置文件为 backend/main.php
2、现在 admin 用户通过 127.0.0.1/advanced/backend/web/admin/assignment 会出现下面的界面,说明 rbac 成功了
3、退出 admin 用户,登录 master 用户,发现 master 可以执行 admin/assignment 操作 查看全部
一、创建“调试”的权限:可以进行 gii 和 degug 的操作
1、点击“路由”,将 /gii/ 、/gii/default/index、/debug/ 、/degug/default/index 写入到 auth_item 表
2、点击“权限”,创建名为“调试”的权限,并分配 /gii/ 和 /debug/ 路由
3、点击“角色”,创建名为“普通管理员”的角色,并分配“调式”的权限
二、创建“调式”的菜单
1、创建
gii 菜单:Parent —— 调式;Name —— gii;Route —— /gii/default/index;Order —— 1
debug 菜单:Parent —— 调式;Name —— debug;Route —— /debug/default/index;Order —— 2
2、分配“调式“权限给”站长“角色
3、刷新页面,你会发现左侧导航栏多了调式的菜单
三、创建“普通管理员“角色的新用户
1、进入前台 127.0.0.1/advanced/frontend/web 进行注册新用户
2、进入后台 127.0.0.1/advanced/backend/web/admin/assignment/index
点击 admin 的查看按钮,为 admin 分配普通管理员的角色
3、刷新页面,你会发现 admin 用户也多了 调试的菜单
四、rbac 的作用
1、在步骤三、2中 admin 用户通过 输入地址:127.0.0.1/advanced/backend/web/admin/assignment 进入分配角色的页面,现在我们通过配置限制用户访问,配置文件为 backend/main.php
2、现在 admin 用户通过 127.0.0.1/advanced/backend/web/admin/assignment 会出现下面的界面,说明 rbac 成功了
3、退出 admin 用户,登录 master 用户,发现 master 可以执行 admin/assignment 操作 查看全部
效果:“普通管理员”可以进行gii和debug的操作,而“站长”除了可以进行gii和debug的操作,还可以进行“权限控制”的操作。
一、创建“调试”的权限:可以进行 gii 和 degug 的操作
1、点击“路由”,将 /gii/ 、/gii/default/index、/debug/ 、/degug/default/index 写入到 auth_item 表
2、点击“权限”,创建名为“调试”的权限,并分配 /gii/ 和 /debug/ 路由
3、点击“角色”,创建名为“普通管理员”的角色,并分配“调式”的权限
二、创建“调式”的菜单
1、创建
gii 菜单:Parent —— 调式;Name —— gii;Route —— /gii/default/index;Order —— 1
debug 菜单:Parent —— 调式;Name —— debug;Route —— /debug/default/index;Order —— 2
2、分配“调式“权限给”站长“角色
3、刷新页面,你会发现左侧导航栏多了调式的菜单
三、创建“普通管理员“角色的新用户
1、进入前台 127.0.0.1/advanced/frontend/web 进行注册新用户
2、进入后台 127.0.0.1/advanced/backend/web/admin/assignment/index
点击 admin 的查看按钮,为 admin 分配普通管理员的角色
3、刷新页面,你会发现 admin 用户也多了 调试的菜单
四、rbac 的作用
1、在步骤三、2中 admin 用户通过 输入地址:127.0.0.1/advanced/backend/web/admin/assignment 进入分配角色的页面,现在我们通过配置限制用户访问,配置文件为 backend/main.php
2、现在 admin 用户通过 127.0.0.1/advanced/backend/web/admin/assignment 会出现下面的界面,说明 rbac 成功了
3、退出 admin 用户,登录 master 用户,发现 master 可以执行 admin/assignment 操作
一、创建“调试”的权限:可以进行 gii 和 degug 的操作
1、点击“路由”,将 /gii/ 、/gii/default/index、/debug/ 、/degug/default/index 写入到 auth_item 表
2、点击“权限”,创建名为“调试”的权限,并分配 /gii/ 和 /debug/ 路由
3、点击“角色”,创建名为“普通管理员”的角色,并分配“调式”的权限
二、创建“调式”的菜单
1、创建
gii 菜单:Parent —— 调式;Name —— gii;Route —— /gii/default/index;Order —— 1
debug 菜单:Parent —— 调式;Name —— debug;Route —— /debug/default/index;Order —— 2
2、分配“调式“权限给”站长“角色
3、刷新页面,你会发现左侧导航栏多了调式的菜单
三、创建“普通管理员“角色的新用户
1、进入前台 127.0.0.1/advanced/frontend/web 进行注册新用户
2、进入后台 127.0.0.1/advanced/backend/web/admin/assignment/index
点击 admin 的查看按钮,为 admin 分配普通管理员的角色
3、刷新页面,你会发现 admin 用户也多了 调试的菜单
四、rbac 的作用
1、在步骤三、2中 admin 用户通过 输入地址:127.0.0.1/advanced/backend/web/admin/assignment 进入分配角色的页面,现在我们通过配置限制用户访问,配置文件为 backend/main.php
2、现在 admin 用户通过 127.0.0.1/advanced/backend/web/admin/assignment 会出现下面的界面,说明 rbac 成功了
3、退出 admin 用户,登录 master 用户,发现 master 可以执行 admin/assignment 操作
Yii2 - (五)创建左侧导航栏菜单
鸿宇 发表了文章 • 0 个评论 • 2840 次浏览 • 2016-10-15 22:49
1、创建 menu 表CREATE TABLE `menu` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(128) NOT NULL,
`parent` int(11) DEFAULT NULL,
`route` varchar(256) DEFAULT NULL,
`order` int(11) DEFAULT NULL,
`data` text,
PRIMARY KEY (`id`),
KEY `parent` (`parent`),
CONSTRAINT `menu_ibfk_1` FOREIGN KEY (`parent`) REFERENCES `menu` (`id`) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8
数据库表位置:vendor\mdmsoft\yii2-admin\migrations\m140602_111327_create_menu_table.php
或按照下面你操作步骤执行:
① 打开 common/config/main.php ,在 'components' => , 数组中添加下面代码:'authManager' => [
'class' => 'yii\rbac\DbManager',
],
② 执行命令:yii migrate --migrationPath=@mdm/admin/migrations
2、在 backend/views/layouts/left.php 中添加内容
① 在 left.php 中找到下面代码:<?= dmstr\widgets\Menu::widget(
//......
) ?>② 在后面添加下面代码:<?php
use mdm\admin\components\MenuHelper;
$callback = function($menu){
$data = json_decode($menu['data'], true);
$items = $menu['children'];
$return = ['label' => $menu['name'],'url' => [$menu['route']]];
//处理我们的配置
if ($data) {
isset($data['visible']) && $return['visible'] = $data['visible'];//visible
isset($data['icon']) && $data['icon'] && $return['icon'] = $data['icon'];//icon
//other attribute e.g. class...
$return['options'] = $data;
}
//没配置图标的显示默认图标
(!isset($return['icon']) || !$return['icon']) && $return['icon'] = 'fa fa-circle-o';
$items && $return['items'] = $items;
return $return;
};
//对菜单menu进行了优化
echo dmstr\widgets\Menu::widget( [
'options' => ['class' => 'sidebar-menu'],
'items' => MenuHelper::getAssignedMenu(Yii::$app->user->id,null, $callback),
] );
?>3、点击“菜单”,然后点击 创建按钮进行创建菜单
4、点击“路由”,将以下几个路由写到 auth_item 表(为了分配路由给菜单)
点击“权限”,再点击查看“权限控制”,分配 /admin/menu/*
5、点击“菜单”,创建以下子菜单
* 注意:填写 “Parent” 即父级菜单的名称时要手动选择才行,直接全打上 会保存不了的。比如:先输入“权限”,然后出现下拉菜单就可以选择“权限控制”了。
6、刷新页面,预览效果:你会发现,多了一个菜单,请删除 left.php 中多余的 <ul></ul> 查看全部
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(128) NOT NULL,
`parent` int(11) DEFAULT NULL,
`route` varchar(256) DEFAULT NULL,
`order` int(11) DEFAULT NULL,
`data` text,
PRIMARY KEY (`id`),
KEY `parent` (`parent`),
CONSTRAINT `menu_ibfk_1` FOREIGN KEY (`parent`) REFERENCES `menu` (`id`) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8
数据库表位置:vendor\mdmsoft\yii2-admin\migrations\m140602_111327_create_menu_table.php
或按照下面你操作步骤执行:
① 打开 common/config/main.php ,在 'components' => , 数组中添加下面代码:'authManager' => [
'class' => 'yii\rbac\DbManager',
],
② 执行命令:yii migrate --migrationPath=@mdm/admin/migrations
2、在 backend/views/layouts/left.php 中添加内容
① 在 left.php 中找到下面代码:<?= dmstr\widgets\Menu::widget(
//......
) ?>② 在后面添加下面代码:<?php
use mdm\admin\components\MenuHelper;
$callback = function($menu){
$data = json_decode($menu['data'], true);
$items = $menu['children'];
$return = ['label' => $menu['name'],'url' => [$menu['route']]];
//处理我们的配置
if ($data) {
isset($data['visible']) && $return['visible'] = $data['visible'];//visible
isset($data['icon']) && $data['icon'] && $return['icon'] = $data['icon'];//icon
//other attribute e.g. class...
$return['options'] = $data;
}
//没配置图标的显示默认图标
(!isset($return['icon']) || !$return['icon']) && $return['icon'] = 'fa fa-circle-o';
$items && $return['items'] = $items;
return $return;
};
//对菜单menu进行了优化
echo dmstr\widgets\Menu::widget( [
'options' => ['class' => 'sidebar-menu'],
'items' => MenuHelper::getAssignedMenu(Yii::$app->user->id,null, $callback),
] );
?>3、点击“菜单”,然后点击 创建按钮进行创建菜单
4、点击“路由”,将以下几个路由写到 auth_item 表(为了分配路由给菜单)
点击“权限”,再点击查看“权限控制”,分配 /admin/menu/*
5、点击“菜单”,创建以下子菜单
* 注意:填写 “Parent” 即父级菜单的名称时要手动选择才行,直接全打上 会保存不了的。比如:先输入“权限”,然后出现下拉菜单就可以选择“权限控制”了。
6、刷新页面,预览效果:你会发现,多了一个菜单,请删除 left.php 中多余的 <ul></ul> 查看全部
1、创建 menu 表
数据库表位置:vendor\mdmsoft\yii2-admin\migrations\m140602_111327_create_menu_table.php
或按照下面你操作步骤执行:
① 打开 common/config/main.php ,在 'components' => , 数组中添加下面代码:
② 执行命令:
2、在 backend/views/layouts/left.php 中添加内容
① 在 left.php 中找到下面代码:
4、点击“路由”,将以下几个路由写到 auth_item 表(为了分配路由给菜单)
点击“权限”,再点击查看“权限控制”,分配 /admin/menu/*
5、点击“菜单”,创建以下子菜单
* 注意:填写 “Parent” 即父级菜单的名称时要手动选择才行,直接全打上 会保存不了的。比如:先输入“权限”,然后出现下拉菜单就可以选择“权限控制”了。
6、刷新页面,预览效果:你会发现,多了一个菜单,请删除 left.php 中多余的 <ul></ul>
CREATE TABLE `menu` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(128) NOT NULL,
`parent` int(11) DEFAULT NULL,
`route` varchar(256) DEFAULT NULL,
`order` int(11) DEFAULT NULL,
`data` text,
PRIMARY KEY (`id`),
KEY `parent` (`parent`),
CONSTRAINT `menu_ibfk_1` FOREIGN KEY (`parent`) REFERENCES `menu` (`id`) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8
数据库表位置:vendor\mdmsoft\yii2-admin\migrations\m140602_111327_create_menu_table.php
或按照下面你操作步骤执行:
① 打开 common/config/main.php ,在 'components' => , 数组中添加下面代码:
'authManager' => [
'class' => 'yii\rbac\DbManager',
],
② 执行命令:
yii migrate --migrationPath=@mdm/admin/migrations
2、在 backend/views/layouts/left.php 中添加内容
① 在 left.php 中找到下面代码:
<?= dmstr\widgets\Menu::widget(② 在后面添加下面代码:
//......
) ?>
<?php3、点击“菜单”,然后点击 创建按钮进行创建菜单
use mdm\admin\components\MenuHelper;
$callback = function($menu){
$data = json_decode($menu['data'], true);
$items = $menu['children'];
$return = ['label' => $menu['name'],'url' => [$menu['route']]];
//处理我们的配置
if ($data) {
isset($data['visible']) && $return['visible'] = $data['visible'];//visible
isset($data['icon']) && $data['icon'] && $return['icon'] = $data['icon'];//icon
//other attribute e.g. class...
$return['options'] = $data;
}
//没配置图标的显示默认图标
(!isset($return['icon']) || !$return['icon']) && $return['icon'] = 'fa fa-circle-o';
$items && $return['items'] = $items;
return $return;
};
//对菜单menu进行了优化
echo dmstr\widgets\Menu::widget( [
'options' => ['class' => 'sidebar-menu'],
'items' => MenuHelper::getAssignedMenu(Yii::$app->user->id,null, $callback),
] );
?>
4、点击“路由”,将以下几个路由写到 auth_item 表(为了分配路由给菜单)
点击“权限”,再点击查看“权限控制”,分配 /admin/menu/*
5、点击“菜单”,创建以下子菜单
* 注意:填写 “Parent” 即父级菜单的名称时要手动选择才行,直接全打上 会保存不了的。比如:先输入“权限”,然后出现下拉菜单就可以选择“权限控制”了。
6、刷新页面,预览效果:你会发现,多了一个菜单,请删除 left.php 中多余的 <ul></ul>
Yii2 - (四)rbac 详细操作
鸿宇 发表了文章 • 0 个评论 • 1897 次浏览 • 2016-10-15 22:46
1、将 backend/views/layouts/left.php 中<?= dmstr\widgets\Menu::widget(
//......
) ?>修改为<?= dmstr\widgets\Menu::widget(
[
'options' => ['class' => 'sidebar-menu'],
'items' => [
['label' => '系统设置', 'options' => ['class' => 'header']],
[
'label' => '权限控制',
'icon' => 'fa fa-lock',
'url' => '#',
'items' => [
['label' => '路由', 'icon' => 'fa fa-circle-o', 'url' => ['/admin/route'],],
['label' => '权限', 'icon' => 'fa fa-circle-o', 'url' => ['/admin/permission'],],
['label' => '角色', 'icon' => 'fa fa-circle-o', 'url' => ['/admin/role'],],
['label' => '分配', 'icon' => 'fa fa-circle-o', 'url' => ['/admin/assignment'],],
['label' => '菜单', 'icon' => 'fa fa-circle-o', 'url' => ['/admin/menu'],],
],
],
],
]
) ?>
进入 127.0.0.1/advanced/backend/web/ 预览效果
2、点击“路由”,将下图中的几个路由移动到右边
查看 auth_item 数据表,发现新增了几行我们刚刚添加的记录
3、点击“权限”,然后点击 创建按钮进行创建权限
再次查看 auth_item 表,你会发现多了一条记录
创建成功之后来到权限的视图界面进行分配权限,将刚刚创建的全部路由分配给该权限
查看 auth_item_child 表,发现新增了四条记录,可以简单理解:auth_item_child 为权限分配了路由
4、点击“角色”,创建一个叫“站长”的角色
查看 auth_item 表,你会发现多了一条记录
此时你会发现,在 auth_item 表中,tyep=1表示角色、type=2表示权限。
创建成功之后来到角色的视图界面进行分配路由,将刚刚创建的“权限控制”分配给该角色
查看 auth_item_child 表,你会发现多了一条记录
可以简单理解:auth_item_child 为角色分配了权限
5、点击“分配”,然后点击当前用户的查看按钮,将“站长”这个角色分配给当前用户
查看 auth_assignment 表,你会发现多了一条记录
可以简单理解:auth_assignment 为用户分配了角色 查看全部
//......
) ?>修改为<?= dmstr\widgets\Menu::widget(
[
'options' => ['class' => 'sidebar-menu'],
'items' => [
['label' => '系统设置', 'options' => ['class' => 'header']],
[
'label' => '权限控制',
'icon' => 'fa fa-lock',
'url' => '#',
'items' => [
['label' => '路由', 'icon' => 'fa fa-circle-o', 'url' => ['/admin/route'],],
['label' => '权限', 'icon' => 'fa fa-circle-o', 'url' => ['/admin/permission'],],
['label' => '角色', 'icon' => 'fa fa-circle-o', 'url' => ['/admin/role'],],
['label' => '分配', 'icon' => 'fa fa-circle-o', 'url' => ['/admin/assignment'],],
['label' => '菜单', 'icon' => 'fa fa-circle-o', 'url' => ['/admin/menu'],],
],
],
],
]
) ?>
进入 127.0.0.1/advanced/backend/web/ 预览效果
2、点击“路由”,将下图中的几个路由移动到右边
查看 auth_item 数据表,发现新增了几行我们刚刚添加的记录
3、点击“权限”,然后点击 创建按钮进行创建权限
再次查看 auth_item 表,你会发现多了一条记录
创建成功之后来到权限的视图界面进行分配权限,将刚刚创建的全部路由分配给该权限
查看 auth_item_child 表,发现新增了四条记录,可以简单理解:auth_item_child 为权限分配了路由
4、点击“角色”,创建一个叫“站长”的角色
查看 auth_item 表,你会发现多了一条记录
此时你会发现,在 auth_item 表中,tyep=1表示角色、type=2表示权限。
创建成功之后来到角色的视图界面进行分配路由,将刚刚创建的“权限控制”分配给该角色
查看 auth_item_child 表,你会发现多了一条记录
可以简单理解:auth_item_child 为角色分配了权限
5、点击“分配”,然后点击当前用户的查看按钮,将“站长”这个角色分配给当前用户
查看 auth_assignment 表,你会发现多了一条记录
可以简单理解:auth_assignment 为用户分配了角色 查看全部
1、将 backend/views/layouts/left.php 中
进入 127.0.0.1/advanced/backend/web/ 预览效果
2、点击“路由”,将下图中的几个路由移动到右边
查看 auth_item 数据表,发现新增了几行我们刚刚添加的记录
3、点击“权限”,然后点击 创建按钮进行创建权限
再次查看 auth_item 表,你会发现多了一条记录
创建成功之后来到权限的视图界面进行分配权限,将刚刚创建的全部路由分配给该权限
查看 auth_item_child 表,发现新增了四条记录,可以简单理解:auth_item_child 为权限分配了路由
4、点击“角色”,创建一个叫“站长”的角色
查看 auth_item 表,你会发现多了一条记录
此时你会发现,在 auth_item 表中,tyep=1表示角色、type=2表示权限。
创建成功之后来到角色的视图界面进行分配路由,将刚刚创建的“权限控制”分配给该角色
查看 auth_item_child 表,你会发现多了一条记录
可以简单理解:auth_item_child 为角色分配了权限
5、点击“分配”,然后点击当前用户的查看按钮,将“站长”这个角色分配给当前用户
查看 auth_assignment 表,你会发现多了一条记录
可以简单理解:auth_assignment 为用户分配了角色
<?= dmstr\widgets\Menu::widget(修改为
//......
) ?>
<?= dmstr\widgets\Menu::widget(
[
'options' => ['class' => 'sidebar-menu'],
'items' => [
['label' => '系统设置', 'options' => ['class' => 'header']],
[
'label' => '权限控制',
'icon' => 'fa fa-lock',
'url' => '#',
'items' => [
['label' => '路由', 'icon' => 'fa fa-circle-o', 'url' => ['/admin/route'],],
['label' => '权限', 'icon' => 'fa fa-circle-o', 'url' => ['/admin/permission'],],
['label' => '角色', 'icon' => 'fa fa-circle-o', 'url' => ['/admin/role'],],
['label' => '分配', 'icon' => 'fa fa-circle-o', 'url' => ['/admin/assignment'],],
['label' => '菜单', 'icon' => 'fa fa-circle-o', 'url' => ['/admin/menu'],],
],
],
],
]
) ?>
进入 127.0.0.1/advanced/backend/web/ 预览效果
2、点击“路由”,将下图中的几个路由移动到右边
查看 auth_item 数据表,发现新增了几行我们刚刚添加的记录
3、点击“权限”,然后点击 创建按钮进行创建权限
再次查看 auth_item 表,你会发现多了一条记录
创建成功之后来到权限的视图界面进行分配权限,将刚刚创建的全部路由分配给该权限
查看 auth_item_child 表,发现新增了四条记录,可以简单理解:auth_item_child 为权限分配了路由
4、点击“角色”,创建一个叫“站长”的角色
查看 auth_item 表,你会发现多了一条记录
此时你会发现,在 auth_item 表中,tyep=1表示角色、type=2表示权限。
创建成功之后来到角色的视图界面进行分配路由,将刚刚创建的“权限控制”分配给该角色
查看 auth_item_child 表,你会发现多了一条记录
可以简单理解:auth_item_child 为角色分配了权限
5、点击“分配”,然后点击当前用户的查看按钮,将“站长”这个角色分配给当前用户
查看 auth_assignment 表,你会发现多了一条记录
可以简单理解:auth_assignment 为用户分配了角色
Yii2 - (三)安装 AdminLTE 渲染后台 和 yii2-admin 集成 rbac
鸿宇 发表了文章 • 0 个评论 • 4684 次浏览 • 2016-10-15 20:04
一、安装 AdminLTE 渲染后台
1、利用 AdminLTE 渲染后台模板
AdminLTE 是一个完全响应管理模板。基于 Bootstrap3 框架,易定制模板。适合多种屏幕分辨率,从小型移动设备到大型台式机。内置了多个页面,包括仪表盘、邮箱、日历、锁屏、登录及注册、404错误、500错误等页面。
① 进入 cmd,切换到 advanced 目录,输入composer require dmstr/yii2-adminlte-asset "2.*"② 拷贝 vendor\dmstr\yii2-adminlte-asset\example-views\yiisoft\yii2-app 目录下面的文件到项目 backend\views,可直接进行覆盖替换
2、进入后台 127.0.0.1/advanced/backend/web/ 查看效果
* 如果遇到页面不断刷新,可能是因为加载资源的时候在获取 google 的 css 资源
解决办法:删除加载 css 资源的那一行代码
3、url 美化
① 配置:backend/config/main.php 文件的 compontents"urlManager" => [
//用于表明 urlManager 是否启用URL美化功能
"enablePrettyUrl" => true,
// 是否在URL中显示入口脚本
"showScriptName" => false,
],② 下载附件中的 .htaccess 文件,放在 backend/web 目录下(这是为了隐藏 Index.php,apache必须要开启rewrite模块)或者自行创建 .htaccess 文件,下面是文件内容:#表示开启重写引擎
RewriteEngine on
#请求的文件或路径是不存在的,如果文件或路径存在将返回已经存在的文件或路径
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
二、安装 yii2-admin 集成 rbac
1、yii2-admin 是 yii2 rbac 的一套管理工具,实现了漂亮的界面和完整的权限管理功能
进入 cmd,切换到 advanced 目录,输入composer require mdmsoft/yii2-admin "2.x-dev"2、配置 backend/config/main.php 文件return [
// ......
'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'],
],
// ......
],
];3、导入 rbac 表格
执行.sql 文件:vendor\yiisoft\yii2\rbac\migrations\schema-mysql.sql (附件中提供)
或按照下面你操作步骤执行:
① 打开 console/config/main.php ,在 'components' => , 数组中添加下面代码:'authManager' => [ 'class' => 'yii\rbac\DbManager', ],
② 执行命令:yii migrate --migrationPath=@yii/rbac/migrations
4、运行 127.0.0.1/advanced/backend/web/admin/route 预览效果
附录:
默认的yii2-adminlte是蓝色主题,可以按照下面的方式配置主题① 打开backend\config\main.php 在components中添加assetManager
'components' => [
'assetManager' => [
'bundles' => [
'dmstr\web\AdminLteAsset' => [
'skin' => 'skin-red',
],
],
],
],
② 打开 backend\views\layouts\main.php,找到body将其class修改如下
<body class="hold-transition <?= \dmstr\helpers\AdminLteHelper::skinClass() ?> sidebar-mini">受ACF的影响,我们暂时看不出来什么,打开backend\controllers\SiteController.php文件,暂时先屏蔽掉 behaviors 方法的 access 部分,至于是什么意思,后面到了该讲的时候我们会说,现在就先把模版框架搭建好。如此一来,我们刷新下site/index看看,是不是有不同样式的主题了呢?其中配置文件中的skin还有下面的其他样式,随便替换,喜欢哪个用哪个,只需要简单的配置即可。(鸿宇还没配置过yellow的主题色,赶紧尝试了一把)"skin-blue",
"skin-black",
"skin-red",
"skin-yellow",
"skin-purple",
"skin-green",
"skin-blue-light",
"skin-black-light",
"skin-red-light",
"skin-yellow-light",
"skin-purple-light",
"skin-green-light"这不就简单的搭建好了我们的管理后台,样式也都是很ok。如果你需要更多的关于该模版的样式,请浏览器中打开 vendor\almasaeed2010\adminlte\index.html 文件进行参考,涵盖你想要的。
查看全部
1、利用 AdminLTE 渲染后台模板
AdminLTE 是一个完全响应管理模板。基于 Bootstrap3 框架,易定制模板。适合多种屏幕分辨率,从小型移动设备到大型台式机。内置了多个页面,包括仪表盘、邮箱、日历、锁屏、登录及注册、404错误、500错误等页面。
① 进入 cmd,切换到 advanced 目录,输入composer require dmstr/yii2-adminlte-asset "2.*"② 拷贝 vendor\dmstr\yii2-adminlte-asset\example-views\yiisoft\yii2-app 目录下面的文件到项目 backend\views,可直接进行覆盖替换
2、进入后台 127.0.0.1/advanced/backend/web/ 查看效果
* 如果遇到页面不断刷新,可能是因为加载资源的时候在获取 google 的 css 资源
解决办法:删除加载 css 资源的那一行代码
3、url 美化
① 配置:backend/config/main.php 文件的 compontents"urlManager" => [
//用于表明 urlManager 是否启用URL美化功能
"enablePrettyUrl" => true,
// 是否在URL中显示入口脚本
"showScriptName" => false,
],② 下载附件中的 .htaccess 文件,放在 backend/web 目录下(这是为了隐藏 Index.php,apache必须要开启rewrite模块)或者自行创建 .htaccess 文件,下面是文件内容:#表示开启重写引擎
RewriteEngine on
#请求的文件或路径是不存在的,如果文件或路径存在将返回已经存在的文件或路径
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
二、安装 yii2-admin 集成 rbac
1、yii2-admin 是 yii2 rbac 的一套管理工具,实现了漂亮的界面和完整的权限管理功能
进入 cmd,切换到 advanced 目录,输入composer require mdmsoft/yii2-admin "2.x-dev"2、配置 backend/config/main.php 文件return [
// ......
'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'],
],
// ......
],
];3、导入 rbac 表格
执行.sql 文件:vendor\yiisoft\yii2\rbac\migrations\schema-mysql.sql (附件中提供)
或按照下面你操作步骤执行:
① 打开 console/config/main.php ,在 'components' => , 数组中添加下面代码:'authManager' => [ 'class' => 'yii\rbac\DbManager', ],
② 执行命令:yii migrate --migrationPath=@yii/rbac/migrations
4、运行 127.0.0.1/advanced/backend/web/admin/route 预览效果
附录:
默认的yii2-adminlte是蓝色主题,可以按照下面的方式配置主题① 打开backend\config\main.php 在components中添加assetManager
'components' => [
'assetManager' => [
'bundles' => [
'dmstr\web\AdminLteAsset' => [
'skin' => 'skin-red',
],
],
],
],
② 打开 backend\views\layouts\main.php,找到body将其class修改如下
<body class="hold-transition <?= \dmstr\helpers\AdminLteHelper::skinClass() ?> sidebar-mini">受ACF的影响,我们暂时看不出来什么,打开backend\controllers\SiteController.php文件,暂时先屏蔽掉 behaviors 方法的 access 部分,至于是什么意思,后面到了该讲的时候我们会说,现在就先把模版框架搭建好。如此一来,我们刷新下site/index看看,是不是有不同样式的主题了呢?其中配置文件中的skin还有下面的其他样式,随便替换,喜欢哪个用哪个,只需要简单的配置即可。(鸿宇还没配置过yellow的主题色,赶紧尝试了一把)"skin-blue",
"skin-black",
"skin-red",
"skin-yellow",
"skin-purple",
"skin-green",
"skin-blue-light",
"skin-black-light",
"skin-red-light",
"skin-yellow-light",
"skin-purple-light",
"skin-green-light"这不就简单的搭建好了我们的管理后台,样式也都是很ok。如果你需要更多的关于该模版的样式,请浏览器中打开 vendor\almasaeed2010\adminlte\index.html 文件进行参考,涵盖你想要的。
查看全部
一、安装 AdminLTE 渲染后台
1、利用 AdminLTE 渲染后台模板
AdminLTE 是一个完全响应管理模板。基于 Bootstrap3 框架,易定制模板。适合多种屏幕分辨率,从小型移动设备到大型台式机。内置了多个页面,包括仪表盘、邮箱、日历、锁屏、登录及注册、404错误、500错误等页面。
① 进入 cmd,切换到 advanced 目录,输入
2、进入后台 127.0.0.1/advanced/backend/web/ 查看效果
* 如果遇到页面不断刷新,可能是因为加载资源的时候在获取 google 的 css 资源
解决办法:删除加载 css 资源的那一行代码
3、url 美化
① 配置:backend/config/main.php 文件的 compontents
二、安装 yii2-admin 集成 rbac
1、yii2-admin 是 yii2 rbac 的一套管理工具,实现了漂亮的界面和完整的权限管理功能
进入 cmd,切换到 advanced 目录,输入
执行.sql 文件:vendor\yiisoft\yii2\rbac\migrations\schema-mysql.sql (附件中提供)
或按照下面你操作步骤执行:
① 打开 console/config/main.php ,在 'components' => , 数组中添加下面代码:
② 执行命令:
4、运行 127.0.0.1/advanced/backend/web/admin/route 预览效果
附录:
默认的yii2-adminlte是蓝色主题,可以按照下面的方式配置主题
1、利用 AdminLTE 渲染后台模板
AdminLTE 是一个完全响应管理模板。基于 Bootstrap3 框架,易定制模板。适合多种屏幕分辨率,从小型移动设备到大型台式机。内置了多个页面,包括仪表盘、邮箱、日历、锁屏、登录及注册、404错误、500错误等页面。
① 进入 cmd,切换到 advanced 目录,输入
composer require dmstr/yii2-adminlte-asset "2.*"② 拷贝 vendor\dmstr\yii2-adminlte-asset\example-views\yiisoft\yii2-app 目录下面的文件到项目 backend\views,可直接进行覆盖替换
2、进入后台 127.0.0.1/advanced/backend/web/ 查看效果
* 如果遇到页面不断刷新,可能是因为加载资源的时候在获取 google 的 css 资源
解决办法:删除加载 css 资源的那一行代码
3、url 美化
① 配置:backend/config/main.php 文件的 compontents
"urlManager" => [② 下载附件中的 .htaccess 文件,放在 backend/web 目录下(这是为了隐藏 Index.php,apache必须要开启rewrite模块)或者自行创建 .htaccess 文件,下面是文件内容:
//用于表明 urlManager 是否启用URL美化功能
"enablePrettyUrl" => true,
// 是否在URL中显示入口脚本
"showScriptName" => false,
],
#表示开启重写引擎
RewriteEngine on
#请求的文件或路径是不存在的,如果文件或路径存在将返回已经存在的文件或路径
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
二、安装 yii2-admin 集成 rbac
1、yii2-admin 是 yii2 rbac 的一套管理工具,实现了漂亮的界面和完整的权限管理功能
进入 cmd,切换到 advanced 目录,输入
composer require mdmsoft/yii2-admin "2.x-dev"2、配置 backend/config/main.php 文件
return [3、导入 rbac 表格
// ......
'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'],
],
// ......
],
];
执行.sql 文件:vendor\yiisoft\yii2\rbac\migrations\schema-mysql.sql (附件中提供)
或按照下面你操作步骤执行:
① 打开 console/config/main.php ,在 'components' => , 数组中添加下面代码:
'authManager' => [ 'class' => 'yii\rbac\DbManager', ],
② 执行命令:
yii migrate --migrationPath=@yii/rbac/migrations
4、运行 127.0.0.1/advanced/backend/web/admin/route 预览效果
附录:
默认的yii2-adminlte是蓝色主题,可以按照下面的方式配置主题
① 打开backend\config\main.php 在components中添加assetManager受ACF的影响,我们暂时看不出来什么,打开backend\controllers\SiteController.php文件,暂时先屏蔽掉 behaviors 方法的 access 部分,至于是什么意思,后面到了该讲的时候我们会说,现在就先把模版框架搭建好。如此一来,我们刷新下site/index看看,是不是有不同样式的主题了呢?其中配置文件中的skin还有下面的其他样式,随便替换,喜欢哪个用哪个,只需要简单的配置即可。(鸿宇还没配置过yellow的主题色,赶紧尝试了一把)
'components' => [
'assetManager' => [
'bundles' => [
'dmstr\web\AdminLteAsset' => [
'skin' => 'skin-red',
],
],
],
],
② 打开 backend\views\layouts\main.php,找到body将其class修改如下
<body class="hold-transition <?= \dmstr\helpers\AdminLteHelper::skinClass() ?> sidebar-mini">
"skin-blue",这不就简单的搭建好了我们的管理后台,样式也都是很ok。如果你需要更多的关于该模版的样式,请浏览器中打开 vendor\almasaeed2010\adminlte\index.html 文件进行参考,涵盖你想要的。
"skin-black",
"skin-red",
"skin-yellow",
"skin-purple",
"skin-green",
"skin-blue-light",
"skin-black-light",
"skin-red-light",
"skin-yellow-light",
"skin-purple-light",
"skin-green-light"
Yii2 - (二)Yii2.0 框架初始化操作
鸿宇 发表了文章 • 0 个评论 • 2556 次浏览 • 2016-10-15 19:51
一、选择开发环境
[]Windows 下直接单击运行 advanced/init.bat,输入 0 选择开发环境,然后再输入 yes 生成配置文件[/]
[]Linux 下,执行命令进入 advanced 目录,输入php init然后,输入 0 ,再输入 yes 即可。[/]
二、配置数据库文件 advanced/common/main-local.php,输入数据库账号和密码<?php
return [
'components' => [
'db' => [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=localhost;dbname=yii',
'username' => 'root',
'password' => '123456',
'charset' => 'utf8',
],
// ......
],
];
三、新建数据库 advanced,然后新建 user 用户表CREATE TABLE `user` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT "自增ID",
`username` varchar(255) NOT NULL COMMENT "用户名",
`auth_key` varchar(32) NOT NULL COMMENT "自动登录key",
`password_hash` varchar(255) NOT NULL COMMENT "加密密码",
`password_reset_token` varchar(255) DEFAULT NULL COMMENT "重置密码token",
`email` varchar(255) NOT NULL COMMENT "邮箱",
`role` smallint(6) NOT NULL DEFAULT "10" COMMENT "角色等级",
`status` smallint(6) NOT NULL DEFAULT "10" COMMENT "状态",
`created_at` int(11) NOT NULL COMMENT "创建时间",
`updated_at` int(11) NOT NULL COMMENT "更新时间",
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8 COMMENT="用户表";或者执行命令:
yii migrate
附录:
安装成功后,进行程序测试
前台地址: 127.0.0.1/advanced/frontend/web/ ,进入前台后点击 Signup 注册用户
后台地址:127.0.0.1/advanced/backend/web,进入后台登录用户
实战开发所需的基本配置<?php
return [
'components' => [
// 配置缓存
'cache' => [
'class' => 'yii\caching\FileCache',
],
// 配置数据库
'db' => [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=localhost;dbname=advanced',
'username' => 'root',
'password' => '',
'charset' => 'utf8',
'tablePrefix' => 'yii_',
'enableSchemaCache' => true,
'schemaCacheDuration' => 24*3600,
'schemaCache' => 'cache',
],
],
// 配置语言
'language'=>'zh-CN',
// 配置时区
'timeZone'=>'Asia/Shanghai',
]; 查看全部
[]Windows 下直接单击运行 advanced/init.bat,输入 0 选择开发环境,然后再输入 yes 生成配置文件[/]
[]Linux 下,执行命令进入 advanced 目录,输入php init然后,输入 0 ,再输入 yes 即可。[/]
二、配置数据库文件 advanced/common/main-local.php,输入数据库账号和密码<?php
return [
'components' => [
'db' => [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=localhost;dbname=yii',
'username' => 'root',
'password' => '123456',
'charset' => 'utf8',
],
// ......
],
];
三、新建数据库 advanced,然后新建 user 用户表CREATE TABLE `user` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT "自增ID",
`username` varchar(255) NOT NULL COMMENT "用户名",
`auth_key` varchar(32) NOT NULL COMMENT "自动登录key",
`password_hash` varchar(255) NOT NULL COMMENT "加密密码",
`password_reset_token` varchar(255) DEFAULT NULL COMMENT "重置密码token",
`email` varchar(255) NOT NULL COMMENT "邮箱",
`role` smallint(6) NOT NULL DEFAULT "10" COMMENT "角色等级",
`status` smallint(6) NOT NULL DEFAULT "10" COMMENT "状态",
`created_at` int(11) NOT NULL COMMENT "创建时间",
`updated_at` int(11) NOT NULL COMMENT "更新时间",
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8 COMMENT="用户表";或者执行命令:
yii migrate
附录:
安装成功后,进行程序测试
前台地址: 127.0.0.1/advanced/frontend/web/ ,进入前台后点击 Signup 注册用户
后台地址:127.0.0.1/advanced/backend/web,进入后台登录用户
实战开发所需的基本配置<?php
return [
'components' => [
// 配置缓存
'cache' => [
'class' => 'yii\caching\FileCache',
],
// 配置数据库
'db' => [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=localhost;dbname=advanced',
'username' => 'root',
'password' => '',
'charset' => 'utf8',
'tablePrefix' => 'yii_',
'enableSchemaCache' => true,
'schemaCacheDuration' => 24*3600,
'schemaCache' => 'cache',
],
],
// 配置语言
'language'=>'zh-CN',
// 配置时区
'timeZone'=>'Asia/Shanghai',
]; 查看全部
一、选择开发环境
二、配置数据库文件 advanced/common/main-local.php,输入数据库账号和密码
三、新建数据库 advanced,然后新建 user 用户表
附录:
安装成功后,进行程序测试
前台地址: 127.0.0.1/advanced/frontend/web/ ,进入前台后点击 Signup 注册用户
后台地址:127.0.0.1/advanced/backend/web,进入后台登录用户
实战开发所需的基本配置
- []Windows 下直接单击运行 advanced/init.bat,输入 0 选择开发环境,然后再输入 yes 生成配置文件[/]
- []Linux 下,执行命令进入 advanced 目录,输入
php init然后,输入 0 ,再输入 yes 即可。[/]
二、配置数据库文件 advanced/common/main-local.php,输入数据库账号和密码
<?php
return [
'components' => [
'db' => [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=localhost;dbname=yii',
'username' => 'root',
'password' => '123456',
'charset' => 'utf8',
],
// ......
],
];
三、新建数据库 advanced,然后新建 user 用户表
CREATE TABLE `user` (或者执行命令:
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT "自增ID",
`username` varchar(255) NOT NULL COMMENT "用户名",
`auth_key` varchar(32) NOT NULL COMMENT "自动登录key",
`password_hash` varchar(255) NOT NULL COMMENT "加密密码",
`password_reset_token` varchar(255) DEFAULT NULL COMMENT "重置密码token",
`email` varchar(255) NOT NULL COMMENT "邮箱",
`role` smallint(6) NOT NULL DEFAULT "10" COMMENT "角色等级",
`status` smallint(6) NOT NULL DEFAULT "10" COMMENT "状态",
`created_at` int(11) NOT NULL COMMENT "创建时间",
`updated_at` int(11) NOT NULL COMMENT "更新时间",
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8 COMMENT="用户表";
yii migrate
附录:
安装成功后,进行程序测试
前台地址: 127.0.0.1/advanced/frontend/web/ ,进入前台后点击 Signup 注册用户
后台地址:127.0.0.1/advanced/backend/web,进入后台登录用户
实战开发所需的基本配置
<?php
return [
'components' => [
// 配置缓存
'cache' => [
'class' => 'yii\caching\FileCache',
],
// 配置数据库
'db' => [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=localhost;dbname=advanced',
'username' => 'root',
'password' => '',
'charset' => 'utf8',
'tablePrefix' => 'yii_',
'enableSchemaCache' => true,
'schemaCacheDuration' => 24*3600,
'schemaCache' => 'cache',
],
],
// 配置语言
'language'=>'zh-CN',
// 配置时区
'timeZone'=>'Asia/Shanghai',
];
Yii2 - (一)通过 Composer 安装 Yii2.0 框架
鸿宇 发表了文章 • 0 个评论 • 2167 次浏览 • 2016-10-15 19:17
一、安装 Composer-Setup.exe (本文附件中提供 Composer-Setup.exe 下载)
① 下载之后直接运行进行安装,安装过程需要选择你的 php 可执行文件,如下图所示(*记得提前在php版本对应的php.ini文件中,开启 php_openssl 扩展):
② 如果安装失败,请开启对应的 PHP 版本的 php_openssl
③ 安装完Composer,运行下面的命令来安装Composer Asset插件:它是通过 Composer 管理 bower 和 npm 包所必须的,此命令全局生效,一劳永逸。进入 cmd,输入:composer global require "fxp/composer-asset-plugin:^1.3.1"
④ 进入 cmd 输入 composer 查看是否安装成功,下图是安装成功界面
二、安装 Yii2.0 框架
① 执行下面命令 或 将附件中 composer.phar 放入你的项目文件夹中 :php -r "readfile('http://getcomposer.org/installer');" | php
php composer.phar global require "fxp/composer-asset-plugin:^1.2.0"
② 现在选择的应用程序模板之一,开始安装 Yii 2.0。应用程序模板是一个包含Yii写的骨架Web应用程序包。
* 安装基本的应用程序模板,运行下面的命令:php composer.phar create-project yiisoft/yii2-app-basic basic 2.0.11
* 安装高级的应用程序模板,运行下面的命令:php composer.phar create-project yiisoft/yii2-app-advanced advanced 2.0.11
composer create-project yiisoft/yii2-app-advanced advanced 2.0.11
* 鸿宇常用安装命令:进入项目目录,依次执行下面命令:
composer config -g repo.packagist composer https://packagist.phpcomposer.com
composer create-project yiisoft/yii2-app-advanced advanced 2.0.11
③ 请注意,您可能会被提示安装过程中输入你的 GitHub 的用户名和密码。这是正常的。只要输入它们并继续。
进入 https://github.com/settings/tokens 点击 「Generate new token」 新建一个 Token,选择默认新建就行,然后就会得到一个 Token,然后输入这个值就 OK 了。
④ 进入advanced 目录 执行 php init 命令,然后输入 0 ,再输入 yes 即可。
附录: Composer 使用方法
① 环境是搭建好了,但是我们仍然需要手动composer install,composer update,这些肯定是少不了的。相信大多数点开这篇教程的人都是composer安装失败,那这样,就教你一招,在你的命令行下面执行composer config -g repo.packagist composer https://packagist.phpcomposer.com什么意思呢?意思就是全局启用packagist镜像。有兴趣的可以搜一搜,这样你再composer self-update看看,速度是不是变快了呢!
② 注:更新 yii2 ,进入 cmd ,切换目录到 advanced,输入composer update yiisoft/yii2 yiisoft/yii2-composer bower-asset/jquery.inputmask
③ Composer 中文使用教程http://docs.phpcomposer.com/00-intro.html
④ 全局安装 Composer
全局安装是将 Composer 安装到系统环境变量 PATH 所包含的路径下面,然后就能够在命令行窗口中直接执行 composer 命令了。
Windows 系统:
[]找到并进入 PHP 的安装目录(和你在命令行中执行的 php 指令应该是同一套 PHP)。[/][]将 composer.phar 复制到 PHP 的安装目录下面,也就是和 php.exe 在同一级目录。[/][[i]]在 PHP 安装目录下新建一个 composer.bat 文件,并将下列代码保存到此文件中。@php "%~dp0composer.phar" %[/i]最后重新打开一个命令行窗口试一试执行composer --version[/*]看看是否正确输出版本号。
⑤ 友情提示
提示:不要忘了经常执行composer selfupdate
以保持 Composer 一直是最新版本哦!
附录
查看 composer 的全局配置信息composer config -l -g
更改 composer 镜像地址中国镜像
composer config -g repo.packagist composer https://packagist.phpcomposer.com
国外镜像
composer config -g repo.packagist composer https://packagist.org
Composer 全局安装curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
Linux 安装 Yii2 文件夹权限问题
进入项目文件夹, 执行如下命令:chmod -R 777 .
临时改变CentOS系统php全局变量# export PATH=[php bin位置]:$PATH
康乐php7示例# export PATH=/vhs/kangle/ext/tpl_php709/bin:$PATH
Linux Yii2 初始化# php init
查看全部
① 下载之后直接运行进行安装,安装过程需要选择你的 php 可执行文件,如下图所示(*记得提前在php版本对应的php.ini文件中,开启 php_openssl 扩展):
② 如果安装失败,请开启对应的 PHP 版本的 php_openssl
③ 安装完Composer,运行下面的命令来安装Composer Asset插件:它是通过 Composer 管理 bower 和 npm 包所必须的,此命令全局生效,一劳永逸。进入 cmd,输入:composer global require "fxp/composer-asset-plugin:^1.3.1"
④ 进入 cmd 输入 composer 查看是否安装成功,下图是安装成功界面
二、安装 Yii2.0 框架
① 执行下面命令 或 将附件中 composer.phar 放入你的项目文件夹中 :php -r "readfile('http://getcomposer.org/installer');" | php
php composer.phar global require "fxp/composer-asset-plugin:^1.2.0"
② 现在选择的应用程序模板之一,开始安装 Yii 2.0。应用程序模板是一个包含Yii写的骨架Web应用程序包。
* 安装基本的应用程序模板,运行下面的命令:php composer.phar create-project yiisoft/yii2-app-basic basic 2.0.11
* 安装高级的应用程序模板,运行下面的命令:php composer.phar create-project yiisoft/yii2-app-advanced advanced 2.0.11
composer create-project yiisoft/yii2-app-advanced advanced 2.0.11
* 鸿宇常用安装命令:进入项目目录,依次执行下面命令:
composer config -g repo.packagist composer https://packagist.phpcomposer.com
composer create-project yiisoft/yii2-app-advanced advanced 2.0.11
③ 请注意,您可能会被提示安装过程中输入你的 GitHub 的用户名和密码。这是正常的。只要输入它们并继续。
进入 https://github.com/settings/tokens 点击 「Generate new token」 新建一个 Token,选择默认新建就行,然后就会得到一个 Token,然后输入这个值就 OK 了。
④ 进入advanced 目录 执行 php init 命令,然后输入 0 ,再输入 yes 即可。
附录: Composer 使用方法
① 环境是搭建好了,但是我们仍然需要手动composer install,composer update,这些肯定是少不了的。相信大多数点开这篇教程的人都是composer安装失败,那这样,就教你一招,在你的命令行下面执行composer config -g repo.packagist composer https://packagist.phpcomposer.com什么意思呢?意思就是全局启用packagist镜像。有兴趣的可以搜一搜,这样你再composer self-update看看,速度是不是变快了呢!
② 注:更新 yii2 ,进入 cmd ,切换目录到 advanced,输入composer update yiisoft/yii2 yiisoft/yii2-composer bower-asset/jquery.inputmask
③ Composer 中文使用教程http://docs.phpcomposer.com/00-intro.html
④ 全局安装 Composer
全局安装是将 Composer 安装到系统环境变量 PATH 所包含的路径下面,然后就能够在命令行窗口中直接执行 composer 命令了。
Windows 系统:
[]找到并进入 PHP 的安装目录(和你在命令行中执行的 php 指令应该是同一套 PHP)。[/][]将 composer.phar 复制到 PHP 的安装目录下面,也就是和 php.exe 在同一级目录。[/][[i]]在 PHP 安装目录下新建一个 composer.bat 文件,并将下列代码保存到此文件中。@php "%~dp0composer.phar" %[/i]最后重新打开一个命令行窗口试一试执行composer --version[/*]看看是否正确输出版本号。
⑤ 友情提示
提示:不要忘了经常执行composer selfupdate
以保持 Composer 一直是最新版本哦!
附录
查看 composer 的全局配置信息composer config -l -g
更改 composer 镜像地址中国镜像
composer config -g repo.packagist composer https://packagist.phpcomposer.com
国外镜像
composer config -g repo.packagist composer https://packagist.org
Composer 全局安装curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
Linux 安装 Yii2 文件夹权限问题
进入项目文件夹, 执行如下命令:chmod -R 777 .
临时改变CentOS系统php全局变量# export PATH=[php bin位置]:$PATH
康乐php7示例# export PATH=/vhs/kangle/ext/tpl_php709/bin:$PATH
Linux Yii2 初始化# php init
查看全部
一、安装 Composer-Setup.exe (本文附件中提供 Composer-Setup.exe 下载)
① 下载之后直接运行进行安装,安装过程需要选择你的 php 可执行文件,如下图所示(*记得提前在php版本对应的php.ini文件中,开启 php_openssl 扩展):
② 如果安装失败,请开启对应的 PHP 版本的 php_openssl
③ 安装完Composer,运行下面的命令来安装Composer Asset插件:它是通过 Composer 管理 bower 和 npm 包所必须的,此命令全局生效,一劳永逸。进入 cmd,输入:
④ 进入 cmd 输入 composer 查看是否安装成功,下图是安装成功界面
二、安装 Yii2.0 框架
① 执行下面命令 或 将附件中 composer.phar 放入你的项目文件夹中 :
② 现在选择的应用程序模板之一,开始安装 Yii 2.0。应用程序模板是一个包含Yii写的骨架Web应用程序包。
* 安装基本的应用程序模板,运行下面的命令:
* 安装高级的应用程序模板,运行下面的命令:
* 鸿宇常用安装命令:
③ 请注意,您可能会被提示安装过程中输入你的 GitHub 的用户名和密码。这是正常的。只要输入它们并继续。
进入 https://github.com/settings/tokens 点击 「Generate new token」 新建一个 Token,选择默认新建就行,然后就会得到一个 Token,然后输入这个值就 OK 了。
④ 进入advanced 目录 执行 php init 命令,然后输入 0 ,再输入 yes 即可。
附录: Composer 使用方法
① 环境是搭建好了,但是我们仍然需要手动composer install,composer update,这些肯定是少不了的。相信大多数点开这篇教程的人都是composer安装失败,那这样,就教你一招,在你的命令行下面执行
② 注:更新 yii2 ,进入 cmd ,切换目录到 advanced,输入
③ Composer 中文使用教程
④ 全局安装 Composer
全局安装是将 Composer 安装到系统环境变量 PATH 所包含的路径下面,然后就能够在命令行窗口中直接执行 composer 命令了。
Windows 系统:
⑤ 友情提示
提示:不要忘了经常执行
以保持 Composer 一直是最新版本哦!
附录
查看 composer 的全局配置信息
更改 composer 镜像地址
Composer 全局安装
Linux 安装 Yii2 文件夹权限问题
进入项目文件夹, 执行如下命令:
临时改变CentOS系统php全局变量
康乐php7示例
Linux Yii2 初始化
① 下载之后直接运行进行安装,安装过程需要选择你的 php 可执行文件,如下图所示(*记得提前在php版本对应的php.ini文件中,开启 php_openssl 扩展):
② 如果安装失败,请开启对应的 PHP 版本的 php_openssl
③ 安装完Composer,运行下面的命令来安装Composer Asset插件:它是通过 Composer 管理 bower 和 npm 包所必须的,此命令全局生效,一劳永逸。进入 cmd,输入:
composer global require "fxp/composer-asset-plugin:^1.3.1"
④ 进入 cmd 输入 composer 查看是否安装成功,下图是安装成功界面
二、安装 Yii2.0 框架
① 执行下面命令 或 将附件中 composer.phar 放入你的项目文件夹中 :
php -r "readfile('http://getcomposer.org/installer');" | php
php composer.phar global require "fxp/composer-asset-plugin:^1.2.0"
② 现在选择的应用程序模板之一,开始安装 Yii 2.0。应用程序模板是一个包含Yii写的骨架Web应用程序包。
* 安装基本的应用程序模板,运行下面的命令:
php composer.phar create-project yiisoft/yii2-app-basic basic 2.0.11
* 安装高级的应用程序模板,运行下面的命令:
php composer.phar create-project yiisoft/yii2-app-advanced advanced 2.0.11
composer create-project yiisoft/yii2-app-advanced advanced 2.0.11
* 鸿宇常用安装命令:
进入项目目录,依次执行下面命令:
composer config -g repo.packagist composer https://packagist.phpcomposer.com
composer create-project yiisoft/yii2-app-advanced advanced 2.0.11
③ 请注意,您可能会被提示安装过程中输入你的 GitHub 的用户名和密码。这是正常的。只要输入它们并继续。
进入 https://github.com/settings/tokens 点击 「Generate new token」 新建一个 Token,选择默认新建就行,然后就会得到一个 Token,然后输入这个值就 OK 了。
④ 进入advanced 目录 执行 php init 命令,然后输入 0 ,再输入 yes 即可。
附录: Composer 使用方法
① 环境是搭建好了,但是我们仍然需要手动composer install,composer update,这些肯定是少不了的。相信大多数点开这篇教程的人都是composer安装失败,那这样,就教你一招,在你的命令行下面执行
composer config -g repo.packagist composer https://packagist.phpcomposer.com什么意思呢?意思就是全局启用packagist镜像。有兴趣的可以搜一搜,这样你再composer self-update看看,速度是不是变快了呢!
② 注:更新 yii2 ,进入 cmd ,切换目录到 advanced,输入
composer update yiisoft/yii2 yiisoft/yii2-composer bower-asset/jquery.inputmask
③ Composer 中文使用教程
http://docs.phpcomposer.com/00-intro.html
④ 全局安装 Composer
全局安装是将 Composer 安装到系统环境变量 PATH 所包含的路径下面,然后就能够在命令行窗口中直接执行 composer 命令了。
Windows 系统:
- []找到并进入 PHP 的安装目录(和你在命令行中执行的 php 指令应该是同一套 PHP)。[/][]将 composer.phar 复制到 PHP 的安装目录下面,也就是和 php.exe 在同一级目录。[/][[i]]在 PHP 安装目录下新建一个 composer.bat 文件,并将下列代码保存到此文件中。
@php "%~dp0composer.phar" %[/i]
最后重新打开一个命令行窗口试一试执行composer --version[/*]
⑤ 友情提示
提示:不要忘了经常执行
composer selfupdate
以保持 Composer 一直是最新版本哦!
附录
查看 composer 的全局配置信息
composer config -l -g
更改 composer 镜像地址
中国镜像
composer config -g repo.packagist composer https://packagist.phpcomposer.com
国外镜像
composer config -g repo.packagist composer https://packagist.org
Composer 全局安装
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
Linux 安装 Yii2 文件夹权限问题
进入项目文件夹, 执行如下命令:
chmod -R 777 .
临时改变CentOS系统php全局变量
# export PATH=[php bin位置]:$PATH
康乐php7示例
# export PATH=/vhs/kangle/ext/tpl_php709/bin:$PATH
Linux Yii2 初始化
# php init