在一个输入中打印所有数组值

时间:2016-10-27 06:15:08

标签: php

我只想将数组中的所有值打印到输入中。目前,当我使用此代码执行此操作时

echo "<input type='text' value='<?php echo $files() ?>' />";

它返回的是

<?php echo Array() ?>

相反,我希望看到数组中的所有值。

我可以解释一下或提供链接吗?

2 个答案:

答案 0 :(得分:0)

  

首先;你不能用PHP打印数组。您可能首先需要在打印前将Array转换为String。第二; 你不是echo在一个echo声明中: echo "<input type='text' value='<?php echo $files() ?>' />";这就是为什么你有:<?php echo Array() ?>因为$ files是一个数组。正如您所看到的,它只是回显PHP代码行:Verbatim。这是回声声明中回声的效果。

无论如何;这里有几个选项:

  <?php

    // CONVERT TO STRING USING IMPLODE; THEN ECHO:
    echo "<input type='text' value='";
    echo implode(", ", $files()) . "'/>";  


    // VAR_DUMP THE VARIABLE TO  SEE IT'S CONTENTS: NOT FOR USE
    echo "<input type='text' value='";
    var_dump( $files() ); 
    echo "' />"; 



    // BUILD A STRING-OUTPUT FROM LOOPING THROUGH THE $files();
    $output      = "";
    foreach($files() as $index=>$value){
        $output .= (is_string($value) || is_numeric($value)) ? $value . ", " : "";            
    }
    echo "<input type='text' value='";
    echo $output . "'/>";

答案 1 :(得分:0)

遵循以下代码:

<?php 
$value = '';
foreach($files() as $val){
    $value .= $val.",";
}
$all_values = rtrim($value, ',');

echo "<input type='text' value='".$all_values."' />";
?>