[wp-hackers] Is get_plugin_data "expensive"?
Omry Yadan
omry at yadan.net
Sat Jul 19 09:25:08 GMT 2008
I use a global search and replace in my plugin build script that
replaces SVN_VERSION with the current version number.
Stephen Rider wrote:
> Heh. Yeah, I know. Sometimes I go to extremes with the whole "never
> repeat data" rule. I hate duplicating this kind of thing, because
> inevitably you do an update and forget that one variable further down
> that _also_ needs to be changed.
>
> Actually, for my purposes, I may only have to update the variable when
> there's a change to the defaults (such as a new option introduced).
> Kind of like $wp_db_version in WP....
>
> Stephen
>
> On Jul 16, 2008, at 10:15 AM, Otto wrote:
>
>> Well, it's certainly more expensive than simply having a variable
>> which you update every time you release a new plugin...
>>
>> $my_version = 1.2;
>>
>> :)
>>
>> On Wed, Jul 16, 2008 at 10:04 AM, Stephen Rider
>> <wp-hackers at striderweb.com> wrote:
>>> Hi all --
>>>
>>> Question for more experienced PHP users:
>>>
>>> I'm working on a function whereby a plugin stores the version of
>>> itself that
>>> was last used. This way, if it has been updated it can (for
>>> example) set
>>> the defaults on any new options that have been added since the last
>>> version.
>>>
>>> The plugin's settings are stored in an array in the options table,
>>> and the
>>> "last used version" is part of that, so there is no extra call to
>>> the DB
>>> since the array is being read out anyway.
>>>
>>> However, to do the comparison, I have to get the current version of the
>>> plugin too, and to do that I need to use get_plugin_data().
>>>
>>> The question is: Is that a bad idea? get_plugin_data() reads the
>>> actual
>>> plugin file for its info -- is that an "expensive" function in terms of
>>> performance? Would it be bad if several plugins were doing it?
>>>
>>> (BTW, yes I know I could just hook this to the activation hook, but
>>> when
>>> people upgrade plugins by simple upload, that doesn't trigger
>>> deactivate/activate.)
>>>
>>> Thanks,
>>> Stephen
>>> _______________________________________________
>>> wp-hackers mailing list
>>> wp-hackers at lists.automattic.com
>>> http://lists.automattic.com/mailman/listinfo/wp-hackers
>>>
>> _______________________________________________
>> wp-hackers mailing list
>> wp-hackers at lists.automattic.com
>> http://lists.automattic.com/mailman/listinfo/wp-hackers
>
> _______________________________________________
> wp-hackers mailing list
> wp-hackers at lists.automattic.com
> http://lists.automattic.com/mailman/listinfo/wp-hackers
More information about the wp-hackers
mailing list