apt-cache search php7.0 --names-only
Will only find packages tagged as
php7.0 or compatible with
php7.0, it won’t install, update, or upgrade any packages. You’d have to do that manually. It’s a simplified way of searching packages.
Now if you run:
add-apt-repository -y ppa:ondrej/php
apt-get -y upgrade
Two things can happen, it’ll either upgrade all existing packages that you’ve installed or it’ll throw an error stating that something is compatible. It’s normally best to purge existing packages before adding a repository.
apt-get -y purge php*
If there’s anything configuration wise that you need to backup, you need to do that before you run that command. Generally with PHP this isn’t the case, but worth noting.
As far as Ubuntu version, there’s really no need to upgrade from 16.04 to 16.10. Ubuntu 16.04 is the LTS, or Long-Term Support release, and it’s up to date and supported for 5 years.
When you deploy a server, or multiple servers, you should deploy with use-case in mind. If you’re constantly upgrading to one version or the next, unless it’s security related, you’re creating more work for yourself than needed.
My typical/standard deployment for a single server is Ubuntu 16.04, NGINX Mainline w/ a few modules (requires a source compile), PHP 7.1.x (which is in that repository I mentioned), MariaDB 10.1 or 10.2 (though I don’t recommend 10.2 right now as it’s an RC thus not 100%), and a few other pieces of software – depending on what I need.
You don’t want to deploy Ubuntu 16.04, install a stack, upgrade to 16.10, change the stack, downgrade X, Y, Z, etc constantly unless you’re 100% sure you’re able to troubleshoot the issues that can come along with it.