com_invoke
(PHP 4)
com_invoke — Calls a COM component's method [deprecated]
Description
com_invoke() invokes the method
named function_name
of the COM
component referenced by com_object
.
com_invoke() returns FALSE
on error,
returns the function_name
's return
value on success. All the extra parameters
function_parameters
are passed to
the method function_name
.
Example #1 Don't use com_invoke(), use OO syntax instead
<?php
// do this
$val = $obj->method($one, $two);
// instead of this:
$val = com_invoke($obj, 'method', $one, $two);
?>
Note: This function does not exist in PHP 5; instead, you should use the regular and more natural OO syntax to access properties or call methods.
- PHP Руководство
- Функции по категориям
- Индекс функций
- Справочник функций
- Расширения только для Windows
- COM и .Net (Windows)
- com_create_guid
- com_event_sink
- com_get_active_object
- com_load_typelib
- com_message_pump
- com_print_typeinfo
- variant_abs
- variant_add
- variant_and
- variant_cast
- variant_cat
- variant_cmp
- variant_date_from_timestamp
- variant_date_to_timestamp
- variant_div
- variant_eqv
- variant_fix
- variant_get_type
- variant_idiv
- variant_imp
- variant_int
- variant_mod
- variant_mul
- variant_neg
- variant_not
- variant_or
- variant_pow
- variant_round
- variant_set_type
- variant_set
- variant_sub
- variant_xor
Коментарии
Note that if you want to use a string to specify the method to call (e.g. a drop-down list to decide what to do to a server process) you can do this in three ways.
The first is to use this function, as in <?php com_invoke($obj, $_GET['func']); ?>
That's bad.
The second is to use eval(), as in <?php eval("\$obj->{$_GET['func']}();"); ?>
That's very very very *very* bad.
The third is to use call_user_func(), as in <?php call_user_func(array($obj, $_GET['func'])); ?>
That's very good.
Remember to validate the user input against a list of allowed methods if a non-admin is at the console.
function.call-user-func