From c7932e0eb3a39ef0e89669cacf93af9b5650a830 Mon Sep 17 00:00:00 2001 From: yexk Date: Tue, 8 Aug 2017 11:20:33 +0800 Subject: [PATCH] add php get extension --- backend/distinction.mdown | 55 -------------------- question_answer/php_extension.md | 57 +++++++++++++++++++++ sublime/snippet/md_code_php.sublime-snippet | 13 +++++ 3 files changed, 70 insertions(+), 55 deletions(-) delete mode 100644 backend/distinction.mdown create mode 100644 question_answer/php_extension.md create mode 100644 sublime/snippet/md_code_php.sublime-snippet diff --git a/backend/distinction.mdown b/backend/distinction.mdown deleted file mode 100644 index 67a6718..0000000 --- a/backend/distinction.mdown +++ /dev/null @@ -1,55 +0,0 @@ -# 对比Laravel5.4 和ThinkPHP5 的区别 - -## 两者相同部分 -1. 使用的`public/index.php`作为项目入口。 -2. 使用了`MVC设计思想`。 -3. url都使用了`PATHINFO模式`。 -4. `命令行模式`。 -5. 支持分布式数据库设计。 -6. 支持路由模式 -7. 支持表单验证机制。 -8. 支持缓存 -9. 支持错误和日志记录 -10. 支持`Mysql`、`SqlServer`、`PgSQL`、`Sqlite`数据库 -11. 资源控制器(RESTful) -12. 数据库迁移(migration) -13. 支持模型关联,链式操作 -14. 监听SQL -15. 支持多语言 -16. 支持redis -xx. ...(目前只发现了这么多,后续有在再补充) - -**流程图** -![images/laravel5.4.png](images/laravel5.4.png) -![images/tp5.png](images/tp5.png) - -> 两者在使用和搭建上大致相同,通过相同的入口文件。类似的配置文件。和差不多的操作。 - -## 不同点 -### Laravel5.4 -- 服务容器 -> Laravel 务容器是管理类依赖和运行依赖注入的有力工具。依赖注入是一个花俏的名词,它实质上是指:类的依赖通过构造器或在某些情况下通过「setter」方法进行「注入」。 -- 服务提供者 -> -- Facades -- Contracts -> -- 中间件 -> Laravel 中间件提供了一种方便的机制来过滤进入应用的 HTTP 请求。 -- CSRF 保护 -- Blade 模板 -- Laravel Mix -- 广播系统 -- 集合 -- 事件系统 -- 消息通知 -- 队列 -- 任务调度 - -### ThinkPHP5 -- 前置操作 -- 行为(Behavior) -- 分页实现 - - -> 详细的对比内容后续补充。 \ No newline at end of file diff --git a/question_answer/php_extension.md b/question_answer/php_extension.md new file mode 100644 index 0000000..51ba540 --- /dev/null +++ b/question_answer/php_extension.md @@ -0,0 +1,57 @@ +## PHP中获取文件扩展名的N种方法 +从网上收罗的,基本上就以下这几种方式: + +#### 第1种方法: +```php + 大概看了下上面的几种情况。你会喜欢用几种呢? + +接下来就开始测试一下各种刁钻的问题。 + +- 路径1. /home/test +- 路径2. /init.d/test +- 路径3. test.tar.gz + +对应这四个情况。发现使用路径1去测试方法4,出现警告:`Undefined index: extension`。 +使用路径2去测试方法1,方法2,方法3,都出现了取错后缀的问题。 +方法5基本能应对上面的路径1和路径2。但还有一个问题。那就是遇到tar.gz这样的后缀的时候还是会有问题。 +所以路径3的后缀是tar.gz,使用以上几种的方式都不能正确的取得后缀名,这个还是需要自己写一个判断或者限定。 diff --git a/sublime/snippet/md_code_php.sublime-snippet b/sublime/snippet/md_code_php.sublime-snippet new file mode 100644 index 0000000..1814fdd --- /dev/null +++ b/sublime/snippet/md_code_php.sublime-snippet @@ -0,0 +1,13 @@ + + + + php + + text.html.markdown + PHP +