簡體   English   中英

有沒有一種更簡單的方法來在字符串中打印PHP數組?

[英]Is there a simpler way of printing a PHP array in a string?

如您所知,一個好的程序員是一個懶惰的程序員,但是我只是個懶惰。 我的問題是:有沒有一種更簡單的方法可以在PHP echo語句中打印出數組元素(從MySQL查詢)?

我通常這樣做:

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

它可以很好地工作,我只想用一種更短的方法將其打印出來,因為echo將變量的[['element']]位視為字符串。 我可以使用list()獲取所有元素,但是那不是我想要的。

那么,那里有什么答案嗎?

謝謝閱讀,

詹姆士

你實際上可以做

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

PHP允許var用雙引號引起來。 話雖如此,請不要。

我注意到我知道您想做什么。

如果要使用“較短”的版本,請省略連接,如下所示:

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

這也適用:

echo "string start {$array['element']} string end";
$s = 'string start ';
$e = ' string end';
$v = $arr['element'];

// Now you need only 14 keystrokes:
echo $s.$v.$e;

由於我非常不喜歡在字符串中插入變量,因此我更喜歡將echo與幾個參數一起使用:

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

除了比字符串連接( . )快之外,它還更好地處理表達式的回顯結果,因為,具有最低的所有優先級。

用{}包圍數組以進行字符串插值,或使用sprintf

<?php
    $array = array('foo'=>'bar');

    echo "Print it with {}: {$array['foo']}";
    echo "\n";
    echo sprintf("Print it with sprintf: %s", $array['foo']);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM