View Full Version : làm sao để ghi "từng phần" dữ liệu đã nhập?
thienthan36
03-04-2005, 17:36
dùng cái này thử xem nhé
$a = v1,v2,v3,v4";
$b =explode(",",$a);
foreach($b as $v){
echo $v."\n";
}
Hi, tôi có chút vấn đề với php, mong các bạn giúp đỡ. Giả sử từ input có name=giatri của form, nhập vào dữ liệu dạng
abc,def,ghi,....,xyz
tức là các giá trị nhập vào phân biệt bởi 1 dấu phẩy (,). khi đó ta có
$giatri="abc,def,ghi,....,xyz";
bây giờ xử lý làm sao để có thể lưu vào data riêng biệt các giá trị trên, kiểu như
$giatri1=abc; $giatri2=def;......
thanks
Dùng hàm explode(), tham khảo ví dụ của php nhé :
<?php
// Example 1
$pizza = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);
echo $pieces[0]; // piece1
echo $pieces[1]; // piece2
// Example 2
$data = "foo:*:1023:1000::/home/foo:/bin/sh";
list($user, $pass, $uid, $gid, $gecos, $home, $shell) = explode(":", $data);
echo $user; // foo
echo $pass; // *
?>
Ví dụ 1 là câu trả lơi dành cho bạn lol
mrsinguyenus
16-01-2007, 08:19
đọc php manual đi, bản mới nhất đó có đầy đủ trước, bạn nên tìm những function có sẵn trong đó trước, nếu không có mới viết function thực hiện chức năng bạn cần.
Dùng hàm explode(), tham khảo ví dụ của php nhé :
[php]<?php
// Example 1
$pizza = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);
echo $pieces[0]; // piece1
echo $pieces[1]; // piece2
Ví dụ 1 là câu trả lơi dành cho bạn lol
thanks, nhưng mình ko biết trước đc giá trị nhập vào có mấy "đoạn", tức là mấy dấu phẩy, vậy làm sao để lấy đc hết mọi "đoạn" ?
Hàm explode() là hàm tách chuỗi thành mảng theo một ký tự nào đó, cần gì phải biết có bao nhiêu dấu phẩy, dùng vòng for để duyệt mảng là xong
$pizza = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);
Không nhớ hàm count() có phải là đếm số phần tử của mảng hay không?
for($i=0;$i<count($pieces);$i++)
{
echo $pieces[$i];
}
thanks, tôi làm thử rồi mà nó ko ra, bro nào có thể cho hẳn 1 cái simple code, sao cho echo hết đc giá trị nhập vào theo từng dấu phẩu ko ?
TheHeTre
22-01-2007, 16:32
Hàm explode() là hàm tách chuỗi thành mảng theo một ký tự nào đó, cần gì phải biết có bao nhiêu dấu phẩy, dùng vòng for để duyệt mảng là xong
$pizza = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);
Không nhớ hàm count() có phải là đếm số phần tử của mảng hay không?
for($i=0;$i<count($pieces);$i++)
{
echo $pieces[$i];
}
Chỉ cần thêm một chút của dctran thôi:
for($i=0;$i<count($pieces);$i++)
{
echo $pieces[$i]."<br>";
}
Vận động chút đi bạn!
terafunny
23-01-2007, 02:51
Theo tôi nên đặt cái count($pieces) vào 1 biến khác khi sử dụng với vòng lặp for. Không nên echo trực tiếp như vậy. Một mẹo nhỏ đến giờ vẫn còn giá trị ;)
Thử sửa lại như thế này xem sao:
$s_echo = '';
$my_count = count($pieces)
for($i=0;$i<$my_count;$i++)
{
$s_echo .= $pieces[$i]."<br>";
}
echo $s_echo;
Múa rìu quá mắt thợ một chút :)
trangtan1986
25-01-2007, 19:43
Muốn hiển thị ra giá trị của tất cả các phần tử trong mảng thì người ta hay dùng foreach , vi dụ với mảng $mang
foreach($mang as $value)
{
echo($value);
}
Powered by vBulletin® Version 4.2.0 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.