第十九节: PHP路径管理

PHP路径-获取当前路径或目录__FILE__魔术变量__DIR__魔术变量来实现

Last Updated on

PHP路径:经常被PHP的绝对路径和相对路径弄的晕头转向,尤其是相对路径,在PHP应用程序中很难使用。php获取当前路径或目录可以使用__FILE__魔术变量、__DIR__魔术变量来实现,在php中有basename()和dirname()两个函数用于分离文件路径与文件名。在本课程中,我将向你展示如何找到应用程序根目录的路径。

PHP路径

创建4.6_managing_paths文件夹,把上节课《php实现搜索功能》代码复制粘贴到本节课使用。我们学习了词汇表项目的前端部分,现在我们开始学习词汇表项目的后端部分。

创建admin文件夹

第一步、创建index.php专门负责admin控制器

第二步、创建视图文件

  1. view文件夹创建admin文件夹
  2. 把index.view.php文件复制到admin文件夹

第三步、admin/index.php写代码

第四步、访问admin: http://phpfundamentals2019.com/4.6_managing_paths/admin/

上述报错信息找不到layout.view.php文件。

使用绝对路径

什么是绝对路径
例如,D:\xampp\htdocs\PHPFundamentals2019是绝对路径,但一般我们不会在代码中使用这样的路径。

使用__FILE__魔术常量
第一步、__FILE__文件的完整路径和文件名。如果用在被包含文件中,则返回被包含的文件名。参考:http://php.net/manual/zh/language.constants.predefined.php
第二步、admin/index.php代码

第三步、输出:D:\xampp\htdocs\PHPFundamentals2019\4.6_managing_paths\admin\index.php
第四步、使用dirname函数获取路径的文件夹

第五步、我们可以链接/../

定义constant值

第一步、app.php

因为我们可以随时开始使用它来指定绝对路径,就相对路径问题而言,就不是任何问题:

我们可以使用define的方法:

第二步、functions.php

把APP_NAME添加到view函数路径前面:

刷新admin.php显示正确的信息。

把相对路径改为绝对路径

第一步、layout.view.php

改为

第二步、解决 Invalid argument supplied for foreach()报错,因为我们没有把data.json包括进来
1、admin/index.php

2、在admin文件夹看到data.json文件,因为我们的get_terms函数使用的相对路径
1、get_terms()在admin文件夹创建一个新的data.json
2、我们要用原来的那个data.json文件,app/config.php

刷新解决问题。

下载本节《PHP路径管理》完整代码

Last modified: 2019年11月14日

前一篇

PHP零基础入门

第二十节:php入门小项目-创建词汇

php入门小项目:PHP词汇表项目非常适合PHP入门的一个小项目,之前我们读取data.json的现成词汇,这节课我们开始创建词汇.创建4.7_creating_terms文件夹.

...

后一篇

PHP零基础入门

第十八节:php实现搜索功能

php实现搜索功能:整个搜索功能用php的JSON数据实现,json字符串可以访问查询.搜索是许多应用程序常见功能,词汇表项目实现搜索功能.

...