READ FURTHER BELOW at CLI, FOR THE CLI QUESTION, WHICH JUST ADDED TO THE CONVERSATION! THX!
I have written a script which processes an xml file of around 160’000 entries with 48.1MB and a text file of 150’000 entries with 31.1MB, including some directory searches for external files, heavy interlinking and recursive checks and the result formatted and all saved into html files.
Surely, I did review the program couple times and ended up with the most efficient code I could think of. This is a local program and the generator doesn’t need to run regularly. One could argue that I should use an other language than PHP, but PHP with simplexml, etc. just works the best for me and for this purpose. Also a set_time_limit(‘70000’) doesn’t bother me.
Although, here my question, is it possible to make the apache2 on my linux system, use my 4 CPU cores running my PHP script?
Even if I split the process and make several request’s simultaneously, the CPU usage can’t go above 1 CPU at a time.
I googled this topic but couldn’t find a solution, so I may have to just run it over night, even though, I would appreciate some help to boost that thing!!!
ADDED INFO – And here a picture of my processes: 
CLI:
I need to call my index.php in the linux terminal to execute. But I also wanna send four post variables ($_POST[‘example’]) to the script. On top of that, I am looking for having my echos presented in some output file. Could anyone help quickly with the terminal command and the php command to track those 4 post variables inside:
if (PHP_SAPI === 'cli')
{
// ...
}
? …sorry but this is my first php-cli interaction. Thx!
EDIT: Author’s response
This is not a solution but a nice workaround. I clone my virtual machine with the linux/apache2 install to kick in the same process but different parts of the file/process on different vm’s, which lets the host system apply one core for each virtual system, that way I could break down the process time by around the factor 4. Thanks for your posts!
===============
If it’s local, and you want to run it every now and then, you should probably just invoke it from a
cronjob. That way, you can spawn a process for each task you are doing. If you really do want to use PHP for it, you can even invoke PHP to do it from the cron line.None the less, it sounds like you’re doing an inherently single-threaded process anyway, and if you want it faster, should probably use something that isn’t PHP for this.