2016-02-11 3 views
-3

Привет Stack Overflow сообщества, то удивительным много ты ... мне нужен свой опыт ...Параметры функции в PHP

Могу ли я использовать переменную возвращения из одной функции в качестве аргумента в параметре другого, т.е.

function getdata($filename) { 
    //code 
    return $result; 
    } 

    function totaldatafiles($result) { 
     //code 
     return $result2; 
     } 

Спасибо!

+2

Вы пробовали? – Rizier123

ответ

5

Да. Но, как это:

<?php 
... 
$filename = 'your-file-name'; 
$final_result = totaldatafiles(getdata($filename)); 
+0

Прохладный, спасибо. Разве это не хорошая практика? – user5904242

+0

Ну, вы могли бы сделать это в классе, где вы прятали бы такую ​​вещь, как вызов функции внутри другого, поэтому вам не нужно было бы так явно называть это. Я не думаю, что такие вещи - плохая практика. Все зависит от сложности вашего кода, imho. –

+0

Это хорошо выглядит :) – devpro

0

Рассмотрим следующие три функции:

function getdata($filename) { 
    //code 
    return $result; 
} 

function totaldatafiles($data) { 
    //code 
    return $result; 
} 

function printoutput($string) { 
    echo $string; 
} 

Теперь вы можете сделать это:

$filename = 'myfile.txt'; 
$data = getdata($filename); 
$total = totaldatafiles($data); 
printoutput($total); 

Однако, вы также можете сделать это:

printoutput(totaldatafiles(getdata('myfile.txt'))); 

Оба делают то же самое.

Я не могу придумать какие-либо недостатки ко второму варианту, за исключением того, что он менее читабельен.

Смежные вопросы