如何将php变量中的第二个逗号与html中的mysql分开

如何将php变量中的第二个逗号与html中的mysql分开,php,Php,很抱歉,如果我的问题重复,因为我试图找到类似的问题我在MySQL中有一个数据列,如下所示: 我已经创建了一个表单,它使用php在html中显示地址 $pdf_content .= '<div style="padding-left:5%">'; $pdf_content .= $company_name.'<br>'; $pdf_content .= '<div id="errorMessage">'.$address

很抱歉,如果我的问题重复,因为我试图找到类似的问题我在MySQL中有一个数据列,如下所示:

我已经创建了一个表单,它使用php在html中显示地址

$pdf_content .= '<div style="padding-left:5%">';
$pdf_content .= $company_name.'<br>';
$pdf_content .= '<div id="errorMessage">'.$address.'<br></div>';
//$pdf_content .= 'Add2,<br>';
//$pdf_content .= 'Add3,<br>';
$pdf_content .= $postcode.'<br>';
$pdf_content .= $state.'<br>';
$pdf_content .= $country.'<br>';
$pdf_content .= $mobile_phone.'<br>';
$pdf_content .= '<b>RE: Quotation for 3<sup>rd</sup> party claim vehicle </b>';
$pdf_content .= '</div><br>';

是否可以在php中执行此操作,而在MySQL中则不会分离?请提前感谢。

您可以这样尝试…:

$string = 'No.43,Jalan Bandar Bahagia,Taman Pinji Mewah 1';

echo formatString($string);
// No.43,Jalan Bandar Bahagia
// Taman Pinji Mewah 1

function formatString($inputString) {
    $stringToArray = explode(",",$inputString);
    $finalString = "";
    $count = count($stringToArray) - 1;
    foreach($stringToArray as $k => $arr) {
        $addon = ",";
        if($k == 1) {
            $addon = "<br>";
        } 
        if($k == $count) {
            $addon = "";
        }
        
        $finalString .= $arr.$addon;
    }
    
    return $finalString;
}
$string='Taman Pinji Mewah 1号班达尔巴哈马街43号';
回声格式字符串($string);
//班达尔巴哈马街43号
//Taman Pinji Mewah 1
函数formatString($inputString){
$stringToArray=分解(“,”,$inputString);
$finalString=“”;
$count=count($stringToArray)-1;
foreach($stringToArray作为$k=>$arr){
$addon=“,”;
如果($k==1){
$addon=“
”; } 如果($k==$count){ $addon=“”; } $finalString.=$arr.$addon; } 返回$finalString; }

基本上,您可以使用
explode
从字符串创建一个数组,在其上循环并使用元素创建一个字符串。由于要在第二个逗号后添加
,因此如果$key==1(第二个键),函数会将其添加。

使用第二个逗号前的前导子字符串,然后使用
\K
将其忽略。然后匹配出现的第二个逗号并替换它

Regex可以避免编写带有循环的多行解决方案

代码:()

echo preg\u replace(“~^[^,]*,[^,]*\K,~”,“
”,$address);
输出:

No.43,Jalan Bandar Bahagia<br>Taman Pinji Mewah 1
43号,巴哈马班达尔
Taman Pinji Mewah 1号
我的模式与此
preg_match()
调用中的模式有一些相似之处:

“像这样尝试”答案在Stackoverflow上的价值很低,因为它们对未来数千名研究人员的教育/授权作用甚微。
echo preg_replace('~^[^,]*,[^,]*\K,~', '<br>', $address);
No.43,Jalan Bandar Bahagia<br>Taman Pinji Mewah 1