# sudo apt install php7.0
# php -v
# PHP 7.0.4-7ubuntu2.1 (cli) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
看到以上php 信息则表示php7已经安装成功,我们可以借此安装一些extensions
curl,mycrypt,sqlite3等
Apache2
# sudo apt install apache2
# apache2 -v
Server version: Apache/2.4.18 (Ubuntu)
Server built: 2016-04-15T18:00:57
看到以上信息则表示Apache2已经安装成功,这时在地址栏中输入localhost则会跳出相应的Apache信息
当然这时候我们如果打开一个php脚本如phpinfo() ,是不能解析的,这时候我们还需要安装一个模块来让apache2能够顺利解析php代码
# sudo apt install libapache2-mod-php7.0
再次访问包含phpinfo()的文件则可以显示出php的信息
· 更改默认目录
sudo vim /etc/apache2/apache2.conf
// 将 <Directory /var/www/>
// 改成 <Directory "你的目录">
// 可以将/var/www 中的默认网页复制到 你的目录 中
sudo vim /etc/apache2/sites-available/000-default.conf
// 将 DocumentRoot /var/www/html
// 改成 DocumentRoot "你的目录"
sudo /etc/init.d/apache2 restart
Mysql && phpMyAdmin
# sudo apt install mysql-server php7.0-mysql
其中会提示输入root密码等之类的要注意
# sudo apt install phpmyadmin
安装好之后我们要能够进入到phpmyadmin,还需要设置一下,因为我们一般访问都是通过localhost/phpmyadmin 进入,phpmyadmin默认安装在/usr/share中,那么我们可以直接把这个文件夹(phpmyadmin)移动到/var/www/html 中,也可以直接建立一个软链接先在命令行中跳转到/var/www/html 然后 # ln -s /usr/share/phpmyadmin即可
如果用不了PHPmyadmin,一定要修改php配置文件
$ sudo vim /etc/php/7.0/apache2/php.ini
display_errors = On(显示错误日志,出现两次,都要改,不然无效)
extension=php_mbstring.dll (开启mbstring)
常见的问题
1.一步步的做到现在那么你应该是访问localhost/phpmyadmin了,当然很有可能会报错,这时候会提示你没有安装一个拓展mbstring,按照页面错误提示信息下载相应拓展
# sudo apt install sudo apt-get install php-mbstring php7.0-mbstring
接着可能报错新的错误信息:PHP Fatal error : require_once():…… 这时还需要新安装一个拓展
sudo apt-get install php-gettext
sudo service apache2 reload/restart
如果你遇到了蛋疼的Forbidden错误,那么注意你的apache.conf文件
# sudo gedit /etc/apache2/apache.conf
保证当中包括了phpmyadmin的路径 如果没有Include /etc/phpmyadmin/apache.conf 那么添加进去,应该就没问题了,如果还是不行,请检查权限或自己stackoverflow
其他还有各种问题,第一都是先看错误日志,然后使用搜索应该都能解决,不要随便就去编译安装,会很乱,用安装包也同理,血一般的教训!
2.使用php语言连接不了数据库
PHP7 正式移除了 mysql 扩展
目前可以使用mysqlnd和mysql mysqli pdo_mysql
关系打比方说 mysqlnd是金属,而mysql mysqli pdo_mysql只是金属制品而已
使用PDO连接mysql的格式:
$pdo = new PDO('mysql:host=localhost;dbname=database_name;port=3306','用户名','密码');
$pdo->exec('set names utf8');
$stmt = $pdo->prepare("select * from table where id =:id");
$stmt->bindValue(':id',1,PDO::PARAM_INT);
$stmt->execute();
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
$rows = $pdo->query("select * from table where id = 1")->fetchAll(PDO::FETCH_ASSOC);