【发布时间】:2017-03-02 18:10:30
【问题描述】:
我在使用 PHP 方面非常初级,直到现在,我一直在使用 mysqli。有人告诉我一般要学习 PHP,所以,我找到了一个使用 SQLite PDO 进行 CRUD 的教程。
我刚刚从第一个视频开始,我已经很困惑了...... 我对互联网和 php 文档进行了研究,但我找不到我正在寻找的答案。
$db = new PDO("sqlite:".__DIR__."/the_database.db");
这是创建数据库的行;我的问题:
数据库是否需要位于我项目的根目录中?我在互联网上找到了很多不同的选项.....几乎所有的数据库都没有用 .db 完成,而是用 .sqlite ......但我希望这部分将在本教程的后面进行解释。
我最大的问题是,我为什么要添加".__DIR.__",是因为它必须在根文件夹中吗?或者我可以把它放在$db = new PDO("sqlite:"the_database.db"); 吗?我一直试图自己回答这个问题,试图找到如何“显示数据库”或类似的东西,但这个 SQLite 似乎很复杂......
谢谢
【问题讨论】:
-
__DIR__不是根目录。它是您调用它的文件的目录。查看Magic Constants了解更多详情。 -
但是,文件是用那行创建的,对吧?我明白……如果我回显(DIR);它显示我的项目的根文件夹。 (正是 /ltd/www/sites/motors06/root/my_tracker,因为我在服务器上工作)。那么,你是什么意思它是我调用它的文件的目录?谢谢你:)
-
他的意思是当你的脚本在根文件夹时,那么
__DIR__显示根文件夹。 -
它显示
/ltd/www/sites/motors06/root/my_tracker,因为*.php 文件保存在/ltd/www/sites/motors06/root/my_tracker。如果您将文件保存在/somewhere/else,它将显示/somewhere/else。请注意,我们讨论的是您在文本编辑器中看到的特定文件,而不是您可能正在执行上一个文件的require的顶级脚本。