Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / PHP, функция принимающая именованные аргументы / 7 сообщений из 7, страница 1 из 1
05.03.2015, 16:43
    #38896302
Alibek B
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PHP, функция принимающая именованные аргументы
Как сделать сабж, чтобы я мог вызывать функцию как $res = func1($type, $name, 'flag'=>1)?
В документации я не нашел примеров, там только вызов встроенных функций с передачей им именованных аргументов.

________________________
Мы смотрим с оптимизмом...
...в оптический прицел.
...
Рейтинг: 0 / 0
05.03.2015, 16:54
    #38896323
knuckle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PHP, функция принимающая именованные аргументы
А чего вы пытаетесь добиться от такой конструкции?
...
Рейтинг: 0 / 0
05.03.2015, 16:57
    #38896327
ScareCrow
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PHP, функция принимающая именованные аргументы
скомпилить свой пхп с этим патчем?
...
Рейтинг: 0 / 0
05.03.2015, 17:25
    #38896363
Alibek B
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PHP, функция принимающая именованные аргументы
Исключительно удобство использования.
У меня функция со множеством аргументов (более десятка), из которых обязательным является только первый.
Мне было бы удобнее вместо func(123, default, default, default, 'flag1', default, ..., false) использовать func(123, 'flag'=>'flag1', 'check'=>false).
...
Рейтинг: 0 / 0
05.03.2015, 17:51
    #38896407
knuckle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PHP, функция принимающая именованные аргументы
Alibek B.,

Как пример, если функция создана так:
function func1($type, $name, $flag=1) {

}

то можно вызывать так:
$res = func1('type', 'MyName');
в данном случае $flag останется = 1

или так:
$res = func1('type', 'MyName', 2);
тут $flag будет равен 2
...
Рейтинг: 0 / 0
05.03.2015, 17:54
    #38896410
kunaksergey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PHP, функция принимающая именованные аргументы
Alibek B.Исключительно удобство использования.
У меня функция со множеством аргументов (более десятка), из которых обязательным является только первый.
Мне было бы удобнее вместо func(123, default, default, default, 'flag1', default, ..., false) использовать func(123, 'flag'=>'flag1', 'check'=>false).
может вам лучше func($f1=123,$f2='default') ну или func($array) где $array-это массив
...
Рейтинг: 0 / 0
06.03.2015, 05:16
    #38896735
r u
r u
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
PHP, функция принимающая именованные аргументы
Alibek B.Мне было бы удобнее вместо func(123, default, default, default, 'flag1', default, ..., false) использовать func(123, 'flag'=>'flag1', 'check'=>false).
в php нет именованных параметров. для имитации можно использовать массив с именованными ключами. типа
Код: php
1.
2.
3.
4.
5.
6.
$params=[
 'param1'=>false,
 'param2'=>true,
 'param5'=>'flag1',
];
func(123, $params);


и далее внутри func() смотрим что пришло и от этого пляшем дальше
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / PHP, функция принимающая именованные аргументы / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]