Вопрос с собеседования: Попросили написать на PHP функцию которая распечатывает сама

vlad275

Новичок
Вопрос с собеседования: Попросили написать на PHP функцию которая распечатывает сама

Вопрос с собеседования: Попросили написать на PHP функцию которая распечатывает сама себя.
Как это сделать?
 

HraKK

Мудак
Команда форума
распечатывает или выводит?
print fopen('self.php');
 

Adelf

Administrator
Команда форума
ну вообще то
print file_get_contents(__FILE__);

Только это не функция. А весь файл.

А вообще помню такой прикол про С++ - там тоже было нужно вывести в выходной поток свой исходник. Задача не очень простая была.
 

vlad275

Новичок
Я неточно выразился. Вывести на экран. Я спросил можно ли ее просто запихнуть в переменную и вывести командой echo, но насяльника ответил что низя.
 

флоппик

promotor fidei
Команда форума
Партнер клуба
Типично олимпиадная задачка, практической ценности = 0
Возможно, туда не стоит идти работать.
 

vlad275

Новичок
Похоже меня туда уже и не возьмут. А коллектив типа "молодо-весело-дешево"
 

Духовность™

Продвинутый новичок
Возможно, туда не стоит идти работать.
+1

Вообще не ясно, зачем спрашивают подобные задачи. Все равно, что спросить на собеседовании у тренера по спорту, может ли он свои кишки наружу вытащить.
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Не о квайне ли речь товарищи?
 

флоппик

promotor fidei
Команда форума
Партнер клуба
Вообще не ясно, зачем спрашивают подобные задачи. Все равно, что спросить на собеседовании у тренера по спорту, может ли он свои кишки наружу вытащить.
Мне в задачах с такими исскуственными ограничениями всегда анекдот вспоминается:
Лето, грузинская шашлычная, сидят два друга.
- Гоги, слушай,что бы ты делал если бы на тебя напал медведь?
- Вах, Гиви, застрелил бы с ружья!
- Слушай, Гоги, а если патроны кончились?
- А, Гиви, зарезал бы кинжалом!
- А если ты кинжал дома забыл?
- Камнем бы ударил!
- А, слушай, там нет камней.
- На дерево бы залез!
- А, в этом лесу нет деревьев.
- Как нет деревьев? Это же ЛЕС!
- Ну вот такой лес - без деревьев!
- Слушай, Гиви! Ты мой друг, или друг медведя?
Вот и задачи эти, как тот лес. Без деревьев...
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
vlad275
Под квайном я понимал очень определенную одну вещь, но никак не компанию)
 

Вурдалак

Продвинутый новичок
Автор оригинала: vlad275
function bymyself(){
print(bymyself());
return(0);
}
— жесть.

Самое правильное будет, наверное, через http://php.net/manual/en/ref.tokenizer.php

-~{}~ 04.02.10 22:41:

Автор оригинала: Adelf
А вообще помню такой прикол про С++ - там тоже было нужно вывести в выходной поток свой исходник. Задача не очень простая была.
— дай линк :)
 

Вурдалак

Продвинутый новичок
Аа, тогда извиняюсь, я неправильно понял задачу автора :) Совсем разные вещи.
 

vlad275

Новичок
<?php
$bax='$';
$eval='printf ("<?php
%sbax=\'%s\';
%seval=%s;
eval(%seval);
?>",
$bax,
$bax,
$bax,
var_export($eval, true),
$bax);';
eval($eval);
?>

Так? Но я предлагал на собеседовании загнать все в переменную. Сказали, что нельзя
 
Сверху