如何抓取字符串的第一行并在 php 中显示


How to grab first line of string and display in php?

下面是我的代码:

<?php 
 $array = explode("'n", $order['payment_address']);
 $firstLine = $array[0];
 echo $firstLine;
 ?>

我要做的是从$order['payment_address']中获取第一行的客户名称并打印出来。Payment_address包括几行,顶部有客户名称。尝试了本·珀尔·卡汉的代码,输出现在为 -

鲍勃·史密斯12

第 1 行:鲍勃·史密斯122号线:卡诺特广场德里 282010北方邦印度

虽然我只想要"鲍勃史密斯"。

我是新手。请帮忙。

如果您不确定变量中的内容,请始终使用 var_dump()。在浏览器中查看

echo '<pre>'; var_dump($order['payment_address']); echo '</pre>';

以下正则表达式将在任何换行序列或<br>处拆分并返回第一个非空项。

$firstLine = preg_split('~<br */?>|'R~i', $order['payment_address'], -1, PREG_SPLIT_NO_EMPTY)[0];

在 eval.in 观看演示

不提供 $order["payment_address"] 的输出,这应该会有所帮助:

//Trim whitespace from start/end of string
$pa = trim($order["payment_address"]);
//Check if the value is empty
if(!empty($pa)){
    //Explode by line
    $array = explode("'n", $pa);
    //Echo out first line
    echo "First line: {$array[0]}<br><br>";
    //See data line-by-line
    $num = 0;
    foreach($array as $line){
        $num++;
        echo "Line $num: $line<br>";
    }        
} else echo "Payment address is empty!<br>"; //Output error if $pa is empty

对于逗号分隔的值:

//Trim whitespace from start/end of string
$pa = trim($order["payment_address"]);
//Check if the value is empty
if(!empty($pa)){
    //Explode by line
    $array = explode(", ", $pa);
    //Echo out first line
    echo "First line: {$array[0]}<br><br>";
    //See data line-by-line
    $num = 0;
    foreach($array as $line){
        $num++;
        echo "Line $num: $line<br>";
    }        
} else echo "Payment address is empty!<br>"; //Output error if $pa is empty