मैं इस तरह एक रेगेक्स और एक कस्टम कॉलबैक का उपयोग करूंगा:
$str = "Line <br> Line <br> Line <br> Line <br>";
$replace = array("1", "2", "3", "4");
$str = preg_replace_callback( '/<br>/', function( $match) use( &$replace) {
return array_shift( $replace) . ' ' . "\n";
}, $str);
ध्यान दें कि यह मानता है कि हम $replace
. को संशोधित कर सकते हैं सरणी। अगर ऐसा नहीं है, तो आप एक काउंटर रख सकते हैं:
$str = "Line <br> Line <br> Line <br> Line <br>";
$replace = array("1", "2", "3", "4");
$count = 0;
$str = preg_replace_callback( '/<br>/', function( $match) use( $replace, &$count) {
return $replace[$count++] . ' ' . "\n";
}, $str);
आप इस डेमो से देख सकते हैं कि यह आउटपुट करता है:
Line 1 Line 2 Line 3 Line 4