Size: a a a

2021 January 05

Д

Дмитрий in phpGeeks
class Foo {
 public function makeFoo(callable $bar) :string {
   return "Hello ".$bar();
 }
}
//этот класс содержит функцию которая возвращает "Hello ".$bar()
источник

РД

Ратмир Диронин... in phpGeeks
Red Black
Медвежья услуга.
ну... он в коде видимо совсем не шарит, раз строкой его скинул. поэтому почему бы не помочь?
источник

Д

Дмитрий in phpGeeks
public function makeFooBar() :string {
   return (new Foo)->makeFoo([$this, 'makeBar']);
 }
// Здесь создается екземпляр первого класса и суется в массив [Hello ".$bar(), 'makeBar']
источник

РД

Ратмир Диронин... in phpGeeks
public function makeFoo(callable $bar) :string {
 return "Hello ".$bar();
}

private function makeBar() :string {
 return "World";
}

self::makeFoo([$this, 'makeBar']);

так можно было что-ли?
источник

RB

Red Black in phpGeeks
Ратмир Диронин
ну... он в коде видимо совсем не шарит, раз строкой его скинул. поэтому почему бы не помочь?
Лучше насильно пихать в pastebin. Это путь к развитию.
источник

РД

Ратмир Диронин... in phpGeeks
Red Black
Лучше насильно пихать в pastebin. Это путь к развитию.
ну... я ему помог с форматированием. а дальше пусть пихает куда хочет
источник

РД

Ратмир Диронин... in phpGeeks
Ратмир Диронин
public function makeFoo(callable $bar) :string {
 return "Hello ".$bar();
}

private function makeBar() :string {
 return "World";
}

self::makeFoo([$this, 'makeBar']);

так можно было что-ли?
нет. нельзя. а я уж подумал...


<br />
<b>Fatal error</b>:  Uncaught TypeError: Argument 1 passed to Foo::makeFoo() must be callable, array given, called in [...][...] on line 11 and defined in [...][...]:4
Stack trace:
#0 [...][...](11): Foo-&gt;makeFoo(Array)
#1 [...][...](19): Bar-&gt;makeFooBar()
#2 {main}
 thrown in <b>[...][...]</b> on line <b>4</b><br />
источник

RB

Red Black in phpGeeks
Он не может хотеть то, про что не знает. =)
источник

РД

Ратмир Диронин... in phpGeeks
Ратмир Диронин
нет. нельзя. а я уж подумал...


<br />
<b>Fatal error</b>:  Uncaught TypeError: Argument 1 passed to Foo::makeFoo() must be callable, array given, called in [...][...] on line 11 and defined in [...][...]:4
Stack trace:
#0 [...][...](11): Foo-&gt;makeFoo(Array)
#1 [...][...](19): Bar-&gt;makeFooBar()
#2 {main}
 thrown in <b>[...][...]</b> on line <b>4</b><br />
источник

RB

Red Black in phpGeeks
👍
источник

РД

Ратмир Диронин... in phpGeeks
пусть сразу сохраняет полезные сайты)
источник

Д

Дмитрий in phpGeeks
Ратмир Диронин
пусть сразу сохраняет полезные сайты)
источник

Д

Дмитрий in phpGeeks
$bar тут должна содержаться функция?
источник

РД

Ратмир Диронин... in phpGeeks
прикол в статике. через callable он неправильно передаёт экземпляр класса, если таковой вообще можно передать
источник

РД

Ратмир Диронин... in phpGeeks
источник

РД

Ратмир Диронин... in phpGeeks
источник

РД

Ратмир Диронин... in phpGeeks
https://bugs.php.net/bug.php?id=61467
если интересно
источник

EK

Eduard Kavetskyi in phpGeeks
Уважаемые знатоки, сколько у вас ушло времени на то чтобы освоить php ?
Ну тоесть от самого начала до состояния сделать простой сайтик с элементарными опциями типа регистрации , форума и т.д
источник

АГ

Алексей Гевондян... in phpGeeks
бери лару, какой-нить курс, и вперед
источник

RB

Red Black in phpGeeks
...форума.. =)
источник