代码之家  ›  专栏  ›  技术社区  ›  Bojangles Vincent Baillet

有没有更简单的方法将PHP数组打印成字符串?

  •  1
  • Bojangles Vincent Baillet  · 技术社区  · 15 年前

    正如你所知,一个好的程序员是一个懒惰的程序员,但我只是懒惰。我的问题是:有没有更简单的方法在PHP echo语句中打印数组元素(来自MySQL查询)?

    echo "string start " . $array['element'] . " string end";
    

    它工作得很好,我只想用一种较短的方式打印出来,因为echo将变量的“['element']”位看作一个字符串。我可以使用list()获取所有元素,但这不是我想要的。

    那么,有什么答案吗?

    谢谢你的阅读,

    5 回复  |  直到 15 年前
        1
  •  1
  •   NikiC    15 年前

    由于我非常不喜欢在字符串中插入变量,我更喜欢使用带有几个参数的echo:

    echo 'string start ', $array['element'], ' string end';
    

    除此之外,它比字符串串联更快( . )它能更好地处理表达式的回声结果,因为 ,

        2
  •  4
  •   Alexander Sagen    15 年前

    你真的可以

    echo "string start $array[element] string end";
    

        3
  •  2
  •   alexn    15 年前

    我肯定我明白你想做什么。

    echo "string start $array[element] string end";
    

    这也适用于:

    echo "string start {$array['element']} string end";
    
        4
  •  2
  •   GZipp    15 年前
    $s = 'string start ';
    $e = ' string end';
    $v = $arr['element'];
    
    // Now you need only 14 keystrokes:
    echo $s.$v.$e;
    
        5
  •  0
  •   Alana Storm    15 年前

    用{}环绕数组进行字符串插值,或者使用sprintf

    <?php
        $array = array('foo'=>'bar');
    
        echo "Print it with {}: {$array['foo']}";
        echo "\n";
        echo sprintf("Print it with sprintf: %s", $array['foo']);