Giả sử tôi có cái này:
$array = array["john" => "doe", "foe" => "bar", "oh" => "yeah"];
foreach[$array as $i=>$k]
{
echo $i.'-'.$k.',';
}
tiếng vang
$result = '';
foreach[$array as $i=>$k] {
$result .= $i.'-'.$k.',';
}
$result = rtrim[$result,','];
echo $result;
3Làm thế nào để tôi thoát khỏi dấu phẩy cuối cùng?
Codaddict
435K80 Huy hiệu vàng487 Huy hiệu bạc524 Huy hiệu đồng80 gold badges487 silver badges524 bronze badges
Hỏi ngày 24 tháng 9 năm 2010 lúc 5:01Sep 24, 2010 at 5:01
Ngoài ra, bạn có thể sử dụng chức năng
$result = '';
foreach[$array as $i=>$k] {
$result .= $i.'-'.$k.',';
}
$result = rtrim[$result,','];
echo $result;
4 như:$result = '';
foreach[$array as $i=>$k] {
$result .= $i.'-'.$k.',';
}
$result = rtrim[$result,','];
echo $result;
Đã trả lời ngày 24 tháng 9 năm 2010 lúc 5:05Sep 24, 2010 at 5:05
CodaddictCodaddictcodaddict
435K80 Huy hiệu vàng487 Huy hiệu bạc524 Huy hiệu đồng80 gold badges487 silver badges524 bronze badges
11
Hỏi ngày 24 tháng 9 năm 2010 lúc 5:01
Ngoài ra, bạn có thể sử dụng chức năng
$result = '';
foreach[$array as $i=>$k] {
$result .= $i.'-'.$k.',';
}
$result = rtrim[$result,','];
echo $result;
4 như:Đã trả lời ngày 24 tháng 9 năm 2010 lúc 5:05
$array = array['john-doe', 'foe-bar', 'oh-yeah'];
CodaddictCodaddictarray_map[] function. Note that I'm using single-quoted strings. This is a micro-optimization if you don't have variable names that need to be substituted.
Tôi không thích tất cả các công thức nấu ăn trước đó.
echo implode[',', $array];
PHP không phải là C và có những cách cấp cao hơn để đối phó với vấn đề cụ thể này.Sep 24, 2010 at 6:29
jedi_coderjedi_coderjedi_coder
Tôi sẽ bắt đầu từ điểm mà bạn có một mảng như thế này:1 gold badge11 silver badges13 bronze badges
4
Bạn có thể xây dựng một mảng như vậy từ cái ban đầu bằng cách sử dụng hàm vòng lặp hoặc mảng_map []. Lưu ý rằng tôi đang sử dụng các chuỗi được trích xuất đơn. Đây là một tối ưu hóa vi mô nếu bạn không có tên biến cần được thay thế.
$array = array["john" => "doe", "foe" => "bar", "oh" => "yeah"];
$output = "";
foreach[$array as $i=>$k]
{
$output .= $i.'-'.$k.',';
}
$output = substr[$output, 0, -1];
echo $output;
Bây giờ bạn cần tạo chuỗi CSV từ mảng này, nó có thể được thực hiện như thế này:
$array = array["john" => "doe", "foe" => "bar", "oh" => "yeah"];
$output = array[];
foreach[$array as $i=>$k]
{
$output[] = $i.'-'.$k;
}
echo implode[',', $output];
Đã trả lời ngày 24 tháng 9 năm 2010 lúc 6:29Sep 24, 2010 at 5:03
1.3681 Huy hiệu vàng11 Huy hiệu bạc13 Huy hiệu đồngJim
Một phương pháp là bằng cách sử dụng
55 gold badges48 silver badges65 bronze badges$result = '';
foreach[$array as $i=>$k] {
$result .= $i.'-'.$k.',';
}
$result = rtrim[$result,','];
echo $result;
0
Một phương pháp khác sẽ sử dụng
$result = '';
foreach[$array as $i=>$k] {
$result .= $i.'-'.$k.',';
}
$result = rtrim[$result,','];
echo $result;
6Đã trả lời ngày 24 tháng 9 năm 2010 lúc 5:03
$first = true;
$result = "";
foreach [$array as $i => $k] {
if [!$first] $result .= ",";
$first = false;
$result .= $i.'-'.$k;
}
echo $result;
Jimjimimplode function [our project is in Java, so we had to design our own function for concatenating strings that way]. You should use substr function only when you have a real need for that. Here this should be avoided, since it's a sign of bad programming style.
18.4K5 Huy hiệu vàng48 Huy hiệu bạc65 Huy hiệu ĐồngSep 24, 2010 at 6:03
SPIRiT_1984SPIRiT_1984SPIRiT_1984
Tôi không thích ý tưởng này về việc sử dụng chuỗi con, vì đó là phong cách lập trình xấu. Ý tưởng là kết hợp tất cả các yếu tố và tách chúng bằng các cụm từ "tách" đặc biệt. Ý tưởng gọi phần phụ cho điều đó giống như sử dụng laser để bắn chim.3 gold badges28 silver badges46 bronze badges
3
Trong dự án tôi hiện đang xử lý, chúng tôi cố gắng thoát khỏi những thói quen xấu trong mã hóa. Và mẫu này được coi là một trong số họ. Chúng tôi buộc các lập trình viên viết mã này như thế này:
$result = '';
foreach[$array as $i=>$k] {
if[strlen[$result] > 0] {
$result .= ","
}
$result .= $i.'-'.$k;
}
echo $result;
Mục đích của mã này rõ ràng hơn nhiều so với bản sử dụng chuỗi con. Hoặc bạn có thể chỉ cần sử dụng chức năng Implode [dự án của chúng tôi ở Java, vì vậy chúng tôi phải thiết kế chức năng của riêng mình để nối các chuỗi theo cách đó]. Bạn chỉ nên sử dụng chức năng chuỗi con khi bạn có nhu cầu thực sự cho điều đó. Ở đây nên tránh điều này, vì đó là một dấu hiệu của phong cách lập trình xấu.Sep 24, 2010 at 6:08
Đã trả lời ngày 24 tháng 9 năm 2010 lúc 6:03serg
2.6873 huy hiệu vàng28 Huy hiệu bạc46 Huy hiệu đồng76 gold badges309 silver badges329 bronze badges
2
Tôi luôn sử dụng phương pháp này:
$result1=substr[$i, 0, -1];
Đã trả lời ngày 24 tháng 9 năm 2010 lúc 6:08
Một phương pháp là bằng cách sử dụng
55 gold badges48 silver badges65 bronze badges$result = '';
foreach[$array as $i=>$k] {
$result .= $i.'-'.$k.',';
}
$result = rtrim[$result,','];
echo $result;
Một phương pháp khác sẽ sử dụng
$result = '';
foreach[$array as $i=>$k] {
$result .= $i.'-'.$k.',';
}
$result = rtrim[$result,','];
echo $result;
6Sep 24, 2010 at 5:06
user824984user824984user824984
Đã trả lời ngày 24 tháng 9 năm 2010 lúc 5:032 gold badges2 silver badges9 bronze badges
Jimjim
foreach[$array as $key => $value]
{
$w = $key;
//echo "
w: ".$w."
";// test text
//echo "x: ".$x."
";// test text
if[$w == $x && $w != 0 ]
{
echo ", ";
}
echo $value;
$x++;
}
18.4K5 Huy hiệu vàng48 Huy hiệu bạc65 Huy hiệu ĐồngApr 13, 2012 at 22:15
Tôi không thích ý tưởng này về việc sử dụng chuỗi con, vì đó là phong cách lập trình xấu. Ý tưởng là kết hợp tất cả các yếu tố và tách chúng bằng các cụm từ "tách" đặc biệt. Ý tưởng gọi phần phụ cho điều đó giống như sử dụng laser để bắn chim.
$result = '';
foreach[$array as $i=>$k] {
$result .= $i.'-'.$k.',';
}
$result = rtrim[$result,','];
echo $result;
0Trong dự án tôi hiện đang xử lý, chúng tôi cố gắng thoát khỏi những thói quen xấu trong mã hóa. Và mẫu này được coi là một trong số họ. Chúng tôi buộc các lập trình viên viết mã này như thế này:Jul 6, 2011 at 0:52
Mục đích của mã này rõ ràng hơn nhiều so với bản sử dụng chuỗi con. Hoặc bạn có thể chỉ cần sử dụng chức năng Implode [dự án của chúng tôi ở Java, vì vậy chúng tôi phải thiết kế chức năng của riêng mình để nối các chuỗi theo cách đó]. Bạn chỉ nên sử dụng chức năng chuỗi con khi bạn có nhu cầu thực sự cho điều đó. Ở đây nên tránh điều này, vì đó là một dấu hiệu của phong cách lập trình xấu.Edson Medina
Đã trả lời ngày 24 tháng 9 năm 2010 lúc 6:033 gold badges42 silver badges50 bronze badges
2.6873 huy hiệu vàng28 Huy hiệu bạc46 Huy hiệu đồng
$result = '';
foreach[$array as $i=>$k] {
$result .= $i.'-'.$k.',';
}
$result = rtrim[$result,','];
echo $result;
1Tôi luôn sử dụng phương pháp này:Mar 12, 2016 at 9:21
Đã trả lời ngày 24 tháng 9 năm 2010 lúc 6:08tapos ghosh
Sergserg20 silver badges34 bronze badges
1
108K76 Huy hiệu vàng309 Huy hiệu bạc329 Huy hiệu Đồng
$result = '';
foreach[$array as $i=>$k] {
$result .= $i.'-'.$k.',';
}
$result = rtrim[$result,','];
echo $result;
2Hãy thử mã này sau điều kiện foreach sau đó lặp lại $ result1Jun 15, 2019 at 9:30
ssatish4ussatish4ussatish4u
Jim2 silver badges9 bronze badges