php中admin文件什么意思,开始使用 · tpAdmin 文档 · 看云
## 在线体验
[http://tpadmin.yuan1994.com](http://tpadmin.yuan1994.com)
默认管理员帐号:admin,默认管理员密码:123456
## 仓库地址
[https://github.com/yuan1994/tpadmin](https://github.com/yuan1994/tpadmin)
## 使用方法
### composer安装:
composer create-project yuan1994/tpadmin tpadmin --prefer-dist
### git克隆:
git clone https://github.com/yuan1994/tpadmin
### 直接下载:
https://github.com/yuan1994/tpadmin/archive/master.zip
>[info]框架的依赖需要通过 composer 下载,请在框架根目录执行 composer update ,已确保依赖的类库能下载下来
##部署
参考 [ThinkPHP5 - 部署](http://www.kancloud.cn/manual/thinkphp5/129745)
部署成功后,建立新建数据库 tpadmin,导入项目根目录的 tpadmin.sql 文件,默认管理员帐号:admin,默认管理员密码:123456
如果是配置了虚拟域名并且虚拟域名指向了项目根目录的 `public` 文件夹,那么访问 `http://your-tpadmin-root-domain/admin` 即可,如果没有配置虚拟域名,那么访问 `http://localhost/tpadmin/public/admin` ,如果配置了虚拟域名但是虚拟域名指向的是项目根目录,那么访问 `http://your-tpadmin-root-domain/public/admin` 请对号入座,如果是 `Apache` 推荐第二种
>[info] 如果部署中出现任何问题,请网上搜索自己解决,已在 PHP 5.5 以上版本,Windows/MacOS/Linux 的 Apache/Nginx 服务器上都测试没问题,请节约大家的时间
>[info] 已开启伪静态模式,会隐藏 index.php 入口文件
## 开发规范
请参考ThinkPHP5官方开发规范 [ThinkPHP5 - 开发规范](http://www.kancloud.cn/manual/thinkphp5/118007)
## 升级警告
**ThinkPHP5.0 正式版有一些不适合管理后台需求,做了如下修改,请务必修改下面所示,以后升级必须检查此两处是否有做修复,自己升级 ThinkPHP 版本后一定要修改下面两处**
>[info] **为了支持 include 标签引入文件模板自动定位,修改了文件 `thinkphp/library/think/Template.php` 的 `parseTemplateName` 方法:**
```
/**
* 分析加载的模板文件并读取内容 支持多个模板文件读取
* @access private
* @param string $templateName 模板文件名
* @return string
*/
private function parseTemplateName($templateName)
{
$array = explode(',', $templateName);
$parseStr = '';
foreach ($array as $templateName) {
if (empty($templateName)) {
continue;
}
if (0 === strpos($templateName, '$')) {
//支持加载变量文件名
$templateName = $this->get(substr($templateName, 1));
}
/****************** 修改开始 ********************/
// 解决模板 include 标签不支持自动定位当前控制器的问题
if (!preg_match("/(\/|\:)/", $templateName)) {
$templateName = str_replace(".", DS, \think\Loader::parseName(\think\Request::instance()->controller())) . DS . $templateName;
}
/****************** 修改结束 ********************/
$template = $this->parseTemplateFile($templateName);
if ($template) {
// 获取模板文件内容
$parseStr .= file_get_contents($template);
}
}
return $parseStr;
}
```
>[info] **为了支持多级控制器,`\think\Url::build` 方法有bug,`\think\Url::build("one.two.Three")` 会生成 `one.two._three` 的链接,正确的应该是 `one.two.three`,修改了文件 `thinkphp/library/think/Loader.php` 的 `parseName` 方法:**
**ThinkPHP 5.0.4及以上版本请按此修改:**
```
/**
* 字符串命名风格转换
* type 0 将Java风格转换为C的风格 1 将C风格转换为Java的风格
* @param string $name 字符串
* @param integer $type 转换类型
* @param bool $ucfirst 首字母是否大写(驼峰规则)
* @return string
*/
public static function parseName($name, $type = 0, $ucfirst = true)
{
/****************** 修改开始 ********************/
if ($type) {
return preg_replace_callback(['/\_([a-zA-Z])/', '/([^.][a-zA-Z]*$)/'], function ($match) use ($ucfirst) {
return $ucfirst ? ucfirst($match[1]) : lcfirst($match[1]);
}, $name);
} else {
return strtolower(preg_replace('/((?<=[a-z])(?=[A-Z]))/', '_', $name));
}
/****************** 修改结束 ********************/
/* if ($type) {
$name = preg_replace_callback('/_([a-zA-Z])/', function ($match) {
return strtoupper($match[1]);
}, $name);
return $ucfirst ? ucfirst($name) : lcfirst($name);
} else {
return strtolower(trim(preg_replace("/[A-Z]/", "_\\0", $name), "_"));
}*/
}
```
**ThinkPHP 5.0.3及以下版本请按此修改:**
```
/**
* 字符串命名风格转换
* type 0 将Java风格转换为C的风格 1 将C风格转换为Java的风格
* @param string $name 字符串
* @param integer $type 转换类型
* @return string
*/
public static function parseName($name, $type = 0)
{
/****************** 修改开始 ********************/
if ($type) {
return preg_replace_callback(['/\_([a-zA-Z])/', '/([^.][a-zA-Z]*$)/'], function ($match) {
return ucfirst($match[1]);
}, $name);
} else {
return strtolower(preg_replace('/((?<=[a-z])(?=[A-Z]))/', '_', $name));
}
/****************** 修改结束 ********************/
}
```
## 注意
>[warning] 为了确保代码自动生成可用,请在 Linux/MacOS 系统上使用项目时保证 application 文件夹有可写权限,本地开发可用将文件夹的权限改为 777,线上部署请注意修改成安全的权限
php中admin文件什么意思,开始使用 · tpAdmin 文档 · 看云相关推荐
- java robot 文档_文件配置 · simple-robot 机器人开发者使用文档 · 看云
# 文件配置 文件配置使用properties格式文件,以上一章节中讲到的`配置名`作为**键(key)**,以配置的值作为**值(value)** > 以核心`1.12.x`的配置规范为准,较 ...
- PHP文件怎么改tne,修改 · thinkphp6文档 · 看云
## 最佳实践 >[info] 更新的最佳实践原则是:如果需要使用模型事件,那么就先查询后更新,如果不需要使用事件或者不查询直接更新,直接使用静态的`Update`方法进行条件更新,如非必要,尽 ...
- html中只能上传文件word,HTML文件表单,接受Word文档(HTML file form, accept Word documents)...
HTML文件表单,接受Word文档(HTML file form, accept Word documents) 我在这里遇到了一个奇怪的问题. (不管怎样,或者我只是忽略了一些非常简单的东西.) 我 ...
- 利用Word 中的“从任意文件中恢复文本”转换器来恢复损坏的文档
本文说明 Microsoft Word 中的"从任意文件中恢复文本"转换器以及如何使用它来恢复损坏的文档. 什么是"从任意文件中恢复文本"转换器? " ...
- python下载图片到文件夹_python实现解析markdown文档中的图片,并且保存到本地~
背景 前阵子简书好像说是凉了,搞得我有点小慌,毕竟我的大部分博客都是放在简书上面的,虽然简书提供了打包导出功能,但是只能导出文字,图片的话还是存在简书服务器上面,再加上我一直想要重新做一个个人博客,于 ...
- android 抓取webview中的所有图片_如何一键提取PDF文档中的所有图片?
原标题:如何一键提取PDF文档中的所有图片? 目前PDF文档被大家广泛应用,主要是因为PDF文档在传输和转换的过程中比较稳定,所以PDF格式几乎是办公文件格式的首选.大家都知道PDF文档转换格式以及编 ...
- 在SPS中直接查看用HTML格式阅读Office文档
两天在广州出差,帮一位客户完成一些在SharePoint Portal Server 2003上的工作.在客户的要求中,有两点很有意思:一是能够在查看文档库中的文档时,不打开文档,就能直接看到此文档的 ...
- 使用caj文件转换器怎么转换成word文档
我们在办公的时候会处理很多文件,一般将它转换成word文档的形式,但是有很多caj文件处理不了,一直放在那里,该怎么办呢!这时候就需要用caj文件转换器了,那么使用caj文件转换器怎么转换成word文 ...
- Java项目中利用Freemarker模板引擎导出--生成Word文档
应邀写的一篇文章:Java项目中利用Freemarker模板引擎导出--生成Word文档 资源下载:https://download.csdn.net/download/weixin_41367523 ...
- 完整企业官网源码,前端基于Vue+ElementUI,后台基于基于core3 webapi,含数据库文件,含详情安装部署文档
完整企业官网源码,前端基于Vue+ElementUI,后台基于基于core3 webapi,含数据库文件,含详情安装部署文档 完整代码下载地址:完整企业官网源码 某工程管理有限公司企业官网 前端 新版 ...
最新文章
- 推荐使用的几款Java常用基础工具库
- 13---Net基础加强
- Spring Boot spring mvc 拦截器
- 重庆一银行发生火灾 浓烟直往外窜
- 《Linux内核设计与实现》读书笔记(十四)- 块I/O层
- 云计算开发教程:Python自动化运维开发实战流程控制
- 企业云计算架构--笔记
- DataURL与File,Blob,canvas对象之间的互相转换的Javascript (未完)
- golang nil切片与空切片
- 2019蓝桥杯A组:平方和(枚举,筛选)
- 数据库系统概论--课后习题
- Java命名和java图标来由
- win10远程控制+Android,win10实现手机远程控制电脑步骤分享
- iOS加速计和陀螺仪
- shell常见的语句结构_wuli大世界_新浪博客
- 【Educoder作业】※网页抓取及信息提取
- grads 相关系数_气象统计方法实习报告材料
- Could not publish server configuration for Tomcat v8.0 Server at localhost. Multiple Contexts have a
- 图解图库JanusGraph系列-一文知晓“图数据“底层存储结构(JanusGraph data model)
- 电脑虚拟摄像头 -obs及obs虚拟摄像头插件(免费)