I can tell you that I do not like having to post a huge amount of info for the above subject...and never actually do any contributing. Unfortunately, there are things that need to be done and setup but every one is Free! This post is about getting the proper development environment setup so you can write and test code. So consider this a small test in delayed gratification!

You will need to download several packages throughout this process. Some of these downloads depend on what you downloaded previously. So just do this in steps. I tend to break things down into smaller steps than I typically find in any software listed instructions. There is a valid reason or this. Writer's of these instructions assume a certain level of prior knowledge. I am assuming very little other than you know how to download and install software. If you have lots of experience you might think I am being overy wordy! So let's get started.

Everything I have is just 3 GB of disk space. My fully installed PHP variable LAMP Stack is 958 MB. Netbeans is 858 MB installed. Each installed version of ZC is around 150ish MB. This is different if you also have backup versions of your production store here. Mine is getting a bit large due to all the photos.

  1. Download XAMPP from Install XAMPP at https://www.apachefriends.org/download.html. The version I used was PHP 7.4.29.
  2. Turn off your virus scanner. If not you will get this error.

    Click image for larger version. 

Name:	Screenshot 2022-06-03 123230.png 
Views:	53 
Size:	33.4 KB 
ID:	20018.

    It is okay if you forgot and got to this stage, just open your AV program and pause scanning for a hour or so.
  3. During the install, you will get another warning about UAC and a suggestion to NOT install XAMPP into "Program Files." Make sure you install XAMPP to C:/xampp to prevent issues.

    Click image for larger version. 

Name:	Screenshot 2022-06-03 123518.png 
Views:	51 
Size:	27.9 KB 
ID:	20019
  4. The install will progress from here easily enough. I did the full default install just to make this process as simple as possible. I do not think you need everything like FTP and the mail system so if you are short on disk space, these are features that you can consider NOT installing.
  5. At the end of the install, you are going to get the option to Launch XAMPP. DO NOT DO THIS! XAMPP must be run "As Administrator" or you have issues like this...

    Click image for larger version. 

Name:	Screenshot 2022-06-03 131652.png 
Views:	55 
Size:	57.0 KB 
ID:	20020
  6. Now we need to test the install and make sure it works as it is intended. Run the XAMPP Control Panel as Administrator.
  7. You can tell if you launched the panel properly by the text area at the bottom. There are warnings if you launched the panel without Admin rights. If you did this wrong, you are going to have to go through the errors mentioned above as "Quit" does not work easily. I have been forced to reboot for this error many times.

    Click image for larger version. 

Name:	Untitled1a.jpg 
Views:	53 
Size:	52.5 KB 
ID:	20021
  8. So, click on START for Apache. Ah, I missed a step! I have not set this up to Run as a service. I only start XAMPP when I am working locally. So I always start Apache and MySQL together normally but MySQL is not needed here. Then click on Admin. If you end up on a webpage with "XAMPP Apache + MariaDB + PHP + Perl" at the top, then you have done everything correctly!


So, you now have your own local webserver. Now that does not really help just yet as there are other tools you need. One of the ones I find super important is called xDebug. xDebug works with the Netbeans IDE to allow you to "step into your code" or literally check that each and every statement does what you expected it to do. This is one of the best debugging tools ever. In order to get the correct xDebug file, you need to copy the PHP Server setup information and post it into xDebug's Wizard.

Unfortunately, the forum limits me to 4 attachments per post so I am going to break this post up here.

Part II will cover modifying XAMPP to work with different versions of PHP, namely PHP 8.0 and PHP 8.1.