For templating ideas ...

Would bytecode caches (APC) be able to work properly with this:

function print_something($args, $output = 'html') {
      switch($output) {
           'iphone':
               print_something_iphone($args);
               break;
           default:
               print_something_html($args);
               break;
      }
}


or something like this:

function print_something($args, $output = 'html') {
      if(function_exists('print_something_'.$output)) {
           call_user_func('print_something_'.$output);
      }
}


On Wed, Mar 4, 2009 at 12:45 PM, mike <mike...@gmail.com> wrote:
> On Wed, Mar 4, 2009 at 4:01 AM, Jochem Maas <joc...@iamjochem.com> wrote:
>> ..not an internals question me thinks ... redirecting to generals mailing 
>> list
>
> Actually, I do think it is somewhat internals related.
>
> I want to know from the internals/experts angle if this is a good
> function to be relying on, or if it is one of those things like the
> "@" operator which I've been told is "expensive" and to me is one of
> those things to stay away from.
>
> Now if this breaks opcode caches like APC, I will have to find another way.
>
> Also - I write procedural, not OOP. So that won't help here.
>
> Would creating functions such as
>
> output_foo_html()
> output_foo_rss()
> output_foo_json()
>
> Then depending on the output, using something like this? Would this be
> breaking opcode caches as well then?
>
> if(function_exists('output_foo_'.$format)) {
>    call_user_func('output_foo_'.$format);
> } else {
>    output_foo_html();
> }
>

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to