Meet Homestead
If you wanted to develop PHP applications on your personal computer, you needed to have a web server installed and running locally. PHP is installed to interpret your scripts, and other utilities your website may need, such as working with a database. Your website or web application may even have a requirement for other services such as Memcached or Redis, which are popular caching systems. This saw the rise of utilities such as WampServer and MAMP to create environments for developing dynamic websites without getting connected to the Internet, but these required configuring.
Building on from installed environments like these, the recommended practice for developing dynamic websites and applications is to use virtual machines (VMs). These allow you to emulate your production web server's setup on your local machine. You can also use differently configured VMs for different projects—with a WAMP- or MAMP-like setup, every project had to use the same version of PHP...