开发者

inner workings of PHP (really long PHP script)

开发者 https://www.devze.com 2023-02-01 02:30 出处:网络
I have a really long php script for just 1 page i.e. something like: mywebsite.com/page.php?id=99999 I have about 10000-20000 cases of the id, each with a different settings. Will this slow down my

I have a really long php script for just 1 page i.e. something like:

mywebsite.com/page.php?id=99999

I have about 10000-20000 cases of the id, each with a different settings. Will this slow down my website significantly?

i.e. my question is really along the lines of, what happens when php is executed. does the server execute it and display the results, or does the client's co开发者_开发知识库mputer download it, execute it and display the results.

if its the latter, does it mean a really slow load time? each of the 10000-20000 cases has about 20-25 lines of code after it.

thanks, xoxo


A PHP file is usually processed (interpreted) on the web server and the output is passed to the client.

If the website is slow or not, that totally depends on what the PHP script actually does. However, a PHP file with 10000-20000 cases sounds really, really bad code-wise. Yet, it might perform well for your case (pardon the pun).

Everything comes down to what code is actually performed: Do you just print out different text depending on the given id or do you run a really expensive operation (eg. create a zip file, download stuff, compute PI to the last decimal, ...)?


10,000 to 20,000 distinct cases sounds like a nightmare. Although it's technically possible, I find it hard to believe that your processing needs require that level of granularity.

Is the processing in each of the 10,000 to 20,000 cases really so different that it needs completely separate testing and handling? Aren't there cases similar enough to be handled in a similar way?

For example, if the processing for case $x = 5 is something like:

echo 5;

And the processing for case $x = 10 is something like:

echo 10;

Then these could be grouped into a single test and single handler:

function dumbEcho($x){
    echo $x;
}

function isDumbEchoAble($x){
    return in_array($x, array(5,10));
}

if (isDumbEchoAble($x)){
   dumbEcho($x);
}

For each structurally similar set of processing, you could create a isXXXAble() function to test and an XXX() function to process. [Of course, this is just a simple example, intended to demonstrate a principle, a concept, not necessarily code that you can copy/paste into your current situation.]

The essence of programming - IMHO - is to find these structural similarities, find a parameterization sufficient to handle the unique cases, and then apply this paramaterized processing to those cases.

0

精彩评论

暂无评论...
验证码 换一张
取 消