
Chatbox|Admin nhận làm wap/web, giá cả thương lượng... Thông tin admin tại mỗi bài viết.
Hi, Khách!
|
Tách chuỗi sử dụng hàm explode()
Trong một số trường hợp đặc biệt bạn cần tách các phẩn tử của chuỗi thành những chuỗi nhỏ hơn. Bài viết này, chúng tôi sẽ hướng dẫn các bạn thực hiện việc đó bằng cách sử dụng hàm: explode().
Cú pháp:
Ví dụ:
<?php
$str="Sinh Viên Công Nghệ Thông Tin";
echo $str."<br/>";
print_r (explode(" ",$str)); // Tách chuỗi gốc thành nhiều chuỗi con dựa vào dấu cách
?>
Copy code
$str="Sinh Viên Công Nghệ Thông Tin";
echo $str."<br/>";
print_r (explode(" ",$str)); // Tách chuỗi gốc thành nhiều chuỗi con dựa vào dấu cách
?>
Copy code
Tuy nhiên trong thực tế, người ta hay sử dụng hàm explode() để tách Email thành 2 phần: Username - Domain.
Trong ví dụ này chúng tôi sẽ hướng dẫn bạn tách Email ra làm 2 phần: Username - Domain dựa vào ký tự @.
Ví dụ:
<?php
$str="vuthanhlai@gmail.com";
$email = explode("@",$str); // Tách chuỗi gốc thành nhiều chuỗi con dựa vào ký tự @
echo "Username: ".$email[0."<br/>";
echo "Domain: ".$email[1;
?>
Copy code
$str="vuthanhlai@gmail.com";
$email = explode("@",$str); // Tách chuỗi gốc thành nhiều chuỗi con dựa vào ký tự @
echo "Username: ".$email[0."<br/>";
echo "Domain: ".$email[1;
?>
Copy code
----------------------------------------------------------------
Nhưng cái này tách được có 2 phần.
VD như:
thì sao nhỉ ?
Mún lấyadasdasdfsfasriêng vàabc.com.vnriêng thì sao nhỉ?
Reply:
Tách bằng @ trước, sau đó tách bằng dấu . phần thứ 2.
----------------------------------------------------------------
1.mailkhachhang: nt.nhantv@gmail.com-Sodienthoai:09090090009 - diachi:VN|gioitinh:Nu! - Congviec: Sinhvien
Có dòng thông tin như vậy!
Giờ mình muốn lọc kết quả ra với dạng:
Chỉ lấy 2 kết quả như vậy thì mình viết code thế này?
<?php
$input = "1.mailkhachhang:nt.nhantv@ gmail.com-Sodienthoai:09090090009 - diachi:VN|gioitinh:Nu! - Congviec: Sinhvien"; //Input
$input = explode("mailkhachhang:",$input);
$explode = explode("-",$input[1);
$mail = $explode[0;
$pass = str_replace("Sodienthoai:","",$explode[1);
echo $mail." - ".$pass;
?>
Copy code
$input = "1.mailkhachhang:nt.nhantv@ gmail.com-Sodienthoai:09090090009 - diachi:VN|gioitinh:Nu! - Congviec: Sinhvien"; //Input
$input = explode("mailkhachhang:",$input);
$explode = explode("-",$input[1);
$mail = $explode[0;
$pass = str_replace("Sodienthoai:","",$explode[1);
echo $mail." - ".$pass;
?>
Copy code
----------------------------------------------------------------
Để giảm thiểu lỗi thì đầu tiên phải tách nhiều lần
rồi tạo vòng lặp để bóc tách từng tập $tmp[$x
----------------------------------------------------------------
Mình có dạng như này:
shanta.tomasini@yahoo.com Iha6T Đã đăng ký 08/08/2013 13:5116/08/2013 22:00
luciana_judson@yahoo.c om HuciaeI1Vd Đã đăng ký 08/08/2013 13:51
16/08/2013 21:57
dorisalberts25@yahoo.com DseAav Đã đăng ký 08/08/2013 13:51
16/08/2013 21:54
Copy code
luciana_judson@yahoo.c om HuciaeI1Vd Đã đăng ký 08/08/2013 13:51
16/08/2013 21:57
dorisalberts25@yahoo.com DseAav Đã đăng ký 08/08/2013 13:51
16/08/2013 21:54
Copy code
mình chỉ cần lấy chỗ:
shanta.tomasini@yahoo.com Iha6T
luciana_judson@yahoo.com HuciaeI1Vd
dorisalberts25@yahoo.com DseAav
Copy code
luciana_judson@yahoo.com HuciaeI1Vd
dorisalberts25@yahoo.com DseAav
Copy code
thì làm thế này:
$abc="shanta.tomasini@ yahoo.com Iha6T Đã đăng ký 08/08/2013 13:5116/08/2013 22:00 ";
$code1 = explode("",$abc);
$code2 = explode(" ",$code1[1);
echo code2[0;
$code3 = explode($code2,$abc);
$code4 = explode(" ",$code3[1);
echo code4[0;
Copy code
$code1 = explode("",$abc);
$code2 = explode(" ",$code1[1);
echo code2[0;
$code3 = explode($code2,$abc);
$code4 = explode(" ",$code3[1);
echo code4[0;
Copy code
----------------------------------------------------------------
Vd có 1 chuỗi như sau:
Bây giờ mình muốn lấy từ php? trở về trước thì làm thế nào?
Reply:
Rồi var_dump ($ketqua) ra
Chỉnh sửa lúc 2015-08-06 22:15 bởi Pham_loi
Trực Tuyến:
Khách: 1




