我想要做的是取一個字符串並將其分成較小的部分。輸入字符串有一個固定的結構:劃分一個字符串
{something here}loremipsum;loremipsum2;{something else here} ...
我想什麼做的是每次我找到一個支架或時間創建子「;」,即:
{ something here }
lorem ipsum
lorem ipsum 2
{ something else here }
的PHP代碼到目前爲止我寫的東西並不總是很好,這意味着有時候我會得到像{something here}loremipsum
這樣的一個單獨的部分,當它分成兩部分時。
public function divide() {
$item = "";
$splitted_instructions = str_split($this->instructions);
for($i=0; $i<count($splitted_instructions); $i++) {
if ($splitted_instructions[$i] == "{") {
while ($splitted_instructions[$i+1] != "}") {
$i++;
$item .= $splitted_instructions[$i];
}
$item = "{" . $item . "}";
$items[] = $item;
$item = "";
} else {
while ($splitted_instructions[$i+1] != ";" && $i<count($splitted_instructions)) {
$i++;
$item .= $splitted_instructions[$i];
}
$items[] = $item;
$item = "";
}
}
print_r($items);
}
當然,如果有更好的方式來做到這一點,請讓我知道:)
我不知道的全部代碼,但我期望多次調用'explode'和可能'implode'可以完成這項工作。 – Chris
@Chris感謝您的評論,這也可以工作,我認爲 – user1301428