2014-11-19 2 views
-3

У меня есть данные, которые хранят в одном varible, Как отделить это:Как отделить данные в одной переменной PHP

$data="John Doe 25YR London" 

Стать это:

$name="John Doe"; $age="25"; $city="London"; 
+0

Вы можете разделите строку так, как вы хотите, а затем сохраните ее внутри vars –

+0

Я хочу сначала взять имя, затем возраст, затем город. сохраните его в различной разновидности – rezafahlevi08

+1

, вам нужно разбить до первого номера –

ответ

1

Спасибо за все отвечают, Я не знаю, почему я получил Downvoted, но я решил свою проблему:

<?php 

// 1. Input data 
$input=$_POST['input']; 

// 2. Pecah data dengan "SPASI" menjadi data ARRAY 
$split_data=explode(" ", $input); 

// 3. Cek data ARRAY apakah mengandung angka 
foreach ($split_data as $value) { 
    if (!ctype_alpha($value)) { //tidak murni char(ada bilangan) 
     $umur=$value; 
    } 
} 

// 4. Pecah data Nama dan Kota yang dipisahkan dengan $umur 
$split_data2=explode($umur, $input); 

$nama=$split_data2[0]; 
$kota=$split_data2[1]; ?> 
1
<?php 

$data="John Doe 25YR London"; 

$arr = preg_split('/(?=\d)/', $data, 2); 

if(count($arr) == 2) { 
    $name = trim($arr[0]); 
    $city = trim(strstr($arr[1], ' ')); 
    $age = trim(str_replace($city, '', $arr[1])); 
} 
+0

-1, если у него три или четыре, как имя и фамилия? много людей получили два имени или две фамилии или больше –

+0

@MarcoMura Да и в некоторых странах также могут быть номера в именах ... – RichardBernards

+0

пока оп не расскажет больше, что у вас есть актив, что первый символ как число будет возрастом ;) вы можете обойти свой код, я думаю, чтобы его улучшить –

Смежные вопросы