Belirli bir şekilde bir dize bölme

2 Cevap

Ben şu dize

{item1}home::::Home{/item1}{item2}contact_us::::Contact Us{/item2}{item3}.....

ve böylece uzayıp gidiyor.

Ben dize şu şekilde bölmek gerekiyor

1 => {} item1 ev :::: Ana {/ item1}

2 => {} item2 contact_us :::: Bize {/ item2}

Bir yolu var mı?

2 Cevap

Bunu şöyle yapabiliriz:

$text = "{item1}home::::Home{/item1}{item2}contact_us::::Contact Us{/item2}{item3}.....){/item3}";
preg_match_all('/{item\d}.+?{\/item\d}/', $text, $results);

var_dump($results) üretecektir:

Array
(
    [0] => Array
        (
            [0] => {item1}home::::Home{/item1}
            [1] => {item2}contact_us::::Contact Us{/item2}
            [2] => {item3}.....){/item3}
        )

)

preg_split() regex deseni ile kullanın /{.*?}.*?{\/.*?}/