环境要求
- PHP >= 7.1.0
- Composer(没安装的可以先去安装 https://www.phpcomposer.com/)
)
tp6之后,只支持composer方式安装了,稍微熟悉一下就好了,包管理工具都是大同小异
安装tp6
先切换到自己的web目录下,执行:
composer create-project topthink/think tp
这里的tp
目录名你可以任意更改,这个目录就是应用根目录
。
版本更新
如果之前有安装过,需要更新到最新版,就切换到
应用根目录
(不要搞混了)执行下面的命令更新:
composer update topthink/framework
更新操作会删除thinkphp目录重新下载安装新版本,但不会影响app目录,因此不要在核心框架目录添加任何应用代码和类库。
开启调试模式
应用默认是部署模式,在开发阶段,可以修改环境变量APP_DEBUG开启调试模式,上线部署后切换到部署模式。
本地开发的时候可以在应用根目录下面定义.env文件。
通过create-project安装后在根目录会自带一个.example.env文件(环境变量示例),你可以直接更名为.env文件并根据你的要求进行修改,该示例文件已经开启调试模式
测试运行
应用根目录下运行
php think run
浏览器中输入:
http://localhost:8000/
看到欢迎页表示安装成功。
也可以使用指定的80端口:
php think run -p 80
坑来了!!!
- 执行
php think run
的时候报错。
PHP Warning: require(F:\code\tp/vendor/autoload.php): failed to open stream: No such file or directory in F:\code\tp\think on line 7
Warning: require(F:\code\tp/vendor/autoload.php): failed to open stream: No such file or directory in F:\code\tp\think on line 7
PHP Warning: require(F:\code\tp/vendor/autoload.php): failed to open stream: No such file or directory in F:\code\tp\think on line 7
Warning: require(F:\code\tp/vendor/autoload.php): failed to open stream: No such file or directory in F:\code\tp\think on line 7
PHP Fatal error: require(): Failed opening required 'F:\code\tp/vendor/autoload.php' (include_path='.;C:\php\pear') in F:\code\tp\think on line 7
Fatal error: require(): Failed opening required 'F:\code\tp/vendor/autoload.php' (include_path='.;C:\php\pear') in F:\code\tp\think on line 7
根据报错得知,vendor目录下为空,应该是依赖没有安装好,所以执行
php composer.phar install
安装依赖,但是事实并没又想我想的那样,安装又报错了。
Could not open input file: composer.phar
查阅资料得知,这个和php的一个配置有关,打开php.ini
文件,找到extension=php_openssl.dll
,发现前面本来就没有分号,遂用:
php C:\composer\composer.phar install
然后,又得到了报错(真是一波三折啊)。
PHP Warning: putenv() has been disabled for security reasons in phar://C:/composer/composer.phar/vendor/composer/xdebug-handler/src/Process.php on line 149
Warning: putenv() has been disabled for security reasons in phar://C:/composer/composer.phar/vendor/composer/xdebug-handler/src/Process.php on line 149
PHP Warning: putenv() has been disabled for security reasons in phar://C:/composer/composer.phar/bin/composer on line 57
Warning: putenv() has been disabled for security reasons in phar://C:/composer/composer.phar/bin/composer on line 57
[ErrorException]
putenv() has been disabled for security reasons
根据报错得知,原来是putenv
这个函数被PHP关闭了,所以继续打开php.ini
文件,找到disable_functions
这一项,删掉putenv
。
继续执行php composer.phar install
来安装依赖。然后得到了大量的提示文字,其中有一句
The Process class relies on proc_open, which is not available on your PHP installation.
说的是Process
这个类,依赖于函数proc_open
,但是我的php也不支持这函数,所以还需要删掉php.ini
中disable_functions
中的proc_open
。(我去,为什么不一次告诉我)。
后来几次安装,都是报了类似的错误,大概总结了下,需要删掉
php.ini
中disable_functions
中的:
proc_open
,putenv
,proc_get_status
,passthru
。嫌麻烦直接干掉所有的。
最后再执行
php think run
终于提示:
ThinkPHP Development server is started On <http://127.0.0.1:8000/>
You can exit with `CTRL-C`
Document root is: F:\code\tp\public
安装成功了!(太难了)
网友评论