nol atau lebih banyak ruang menyiratkan bahwa setiap elemen akan memiliki paling banyak satu karakter, atau bahwa Anda akan memiliki banyak elemen kosong yang tak terhingga. Apakah Anda yakin ini yang Anda inginkan?
Jawaban yang diberikan oleh orang lain (Ben James) cukup bagus dan saya telah menggunakannya. Seperti yang ditunjukkan oleh user889030, elemen array terakhir mungkin kosong. Sebenarnya, elemen array pertama dan terakhir bisa kosong. Kode di bawah ini membahas kedua masalah tersebut.
# Split an input string into an array of substrings using any set# whitespace charactersfunction explode_whitespace($str){# Split the input string into an array
$parts = preg_split('/\s+/', $str);# Get the size of the array of substrings
$sizeParts =sizeof($parts);# Check if the last element of the array is a zero-length stringif($sizeParts >0){
$lastPart = $parts[$sizeParts-1];if($lastPart ==''){
array_pop($parts);
$sizeParts--;}# Check if the first element of the array is a zero-length stringif($sizeParts >0){
$firstPart = $parts[0];if($firstPart =='')
array_shift($parts);}}return $parts;}
Explodestringby one or more spaces or tabs in php example as follow:<?php
$str ="test1 test2 test3 test4";
$result = preg_split('/[\s]+/', $str);
var_dump($result);?>/** To seperate by spaces alone: **/<?php
$string ="p q r s t";
$res = preg_split('/ +/', $string);
var_dump($res);?>
@ TINGGAL itu tidak masalah, Anda bisa membelah ruang dengan meledak. Sampai Anda ingin menggunakan nilai-nilai itu, beralihlah ke nilai yang meledak dan buang yang kosong.
$str ="A B C D";
$s = explode(" ",$str);foreach($s as $a=>$b){if( trim($b)){print"using $b\n";}}
Jawaban:
sumber
$parts = preg_split('/\s+/', $str, -1, PREG_SPLIT_NO_EMPTY);
Untuk dipisahkan oleh tab:
Untuk dipisahkan oleh spasi / tab / baris baru:
Untuk memisahkan dengan spasi saja:
$comp = preg_split('/ +/', $var);
sumber
Ini bekerja:
sumber
Penulis meminta explode, untuk itu Anda bisa menggunakan explode seperti ini
$resultArray = explode("\t", $inputString);
Catatan: Anda harus menggunakan penawaran ganda, bukan tunggal.
sumber
Saya pikir Anda ingin
preg_split
:sumber
alih-alih menggunakan meledak, coba preg_split: http://www.php.net/manual/en/function.preg-split.php
sumber
Untuk memperhitungkan ruang lebar penuh seperti
Anda dapat memperluas jawaban Bens untuk ini:
Sumber:
(Saya tidak memiliki reputasi yang cukup untuk mengirim komentar, jadi saya menulis ini sebagai jawaban.)
sumber
Jawaban yang diberikan oleh orang lain (Ben James) cukup bagus dan saya telah menggunakannya. Seperti yang ditunjukkan oleh user889030, elemen array terakhir mungkin kosong. Sebenarnya, elemen array pertama dan terakhir bisa kosong. Kode di bawah ini membahas kedua masalah tersebut.
sumber
sumber
@ TINGGAL itu tidak masalah, Anda bisa membelah ruang dengan meledak. Sampai Anda ingin menggunakan nilai-nilai itu, beralihlah ke nilai yang meledak dan buang yang kosong.
sumber