Ben bir dize (kullanıcı tanımlı) PHP fonksiyonları için kaynak kodunu almak için bir yol bulmaya çalışıyorum.
Normal kod için bu ben fonksiyon tanımlanır dosya ve linenumbers bulabilirsiniz yansıma kullanarak, kolay, o dosyayı açın ve işlev kaynak kodunu okuyabilirsiniz.
Bir fonksiyon eval'd kodunda tanımlı ise bu işe yaramaz. Ben tüm eval'd kod kaydını tutmak istemiyorum.
Bu mümkün mü? Eğer evet ise, o zaman nasıl?
Example code:
<?php
function myfunction() {
echo "Test";
}
eval('
function myevalfunction() {
echo "Test";
}
');
$a = new ReflectionFunction('myfunction');
echo $a;
$b = new ReflectionFunction('myevalfunction');
echo $b;
?>
Output:
Function [ <user> <visibility error> function myfunction ] {
@@ test.php 3 - 5
}
Function [ <user> <visibility error> function myevalfunction ] {
@@ test.php(11) : eval()'d code 2 - 4
}