>我要获取一个数组以附加到字符串中,如果值为 ",则关闭该值。不知何故,生成的数组是这样的: Array ( [0] => test1 [1] => test2 [2] => t3 [3] => t4 [4] => t5 [5] => t6 ) test1,test2,t3,t4,t5,t6
该 php 代码:
<?php
include ('connServer.php');
if(isset($_POST['submit']))
{
//$query =
$updatedBy = $_POST['username'];
$shift = $_POST['shift'];
$date = $_POST['currDate'];
$machine = $_POST['machine'];
$timeDown = $_POST['timeDown'];
$timeUp = $_POST['timeUp'];
$downtimeType = $_POST['dtType'];
$tsDowntime = $_POST['troubleDT'];
$proDowntime = $_POST['proDowntime'];
function is_notnull($var) {return !is_null($var);}
switch ($downtimeType)
{
case "Unscheduled":
{
$process = '-';
$description = $_POST['description'];
$actiontaken = $_POST['details'];
$remark = '-';
$sparepartstaken = $_POST['sparepartsTaken'];
}break;
case "PM":
{
$rebuiltParts = array();
for($i = 1; $i <= 6; $i++)
{
$rebuiltParts[] = $_POST['rebuildParts'.$i];
$rebuiltPartsfiltered = array_filter($rebuiltParts, "is_notnull");
}
print_r(array_filter($rebuiltParts, "is_notnull"));
$process = '-';
$description = "Rebuilt Parts:" .implode(',',$rebuiltPartsfiltered). "";
$actiontaken = $_POST['actTaken'];
$remark = '-';
$sparepartstaken = $_POST['sparepartsTaken'];
}break;
case "Conversion":
{
$process = '-';
$description = '' .$_POST['description']. '';
$actiontaken = $_POST['actTaken'];
$remark = '-';
$sparepartstaken = $_POST['sparepartsTaken'];
}break;
case "Process_Issue":
{
$process = '-';
$description = '' .$_POST['description']. '';
$actiontaken = $_POST['actTaken'];
$remark = '-';
$sparepartstaken = $_POST['sparepartsTaken'];
}break;
case "Others":
{
}break;
case "Bi-Weekly":
{}break;
default:
{} break;
}
print_r(implode(',',$rebuiltPartsfiltered));
/*
$process
$description
$actiontaken
$remark
$sparepartstaken
*/
}
?>
搜索并尝试了其他事情,但情况只会变得更糟。但我真的不知道如何在谷歌搜索中准确地表达这一点。我做错了(我相信这可能是for
循环)还是别的什么?或者有更好的方法可以做到这一点?
所以你的输出:
数组 ( [0] => 测试1 [1] => 测试2 [2] => t3 [3] => t4 [4] => t5[5] => t6 ) 测试1,测试2,t3,t4,t5,t6
完全有道理。您首先拥有此代码...
print_r(array_filter($rebuiltParts, "is_notnull"));
。这是打印出一个数组。这将生成此输出:
数组 ( [0] => 测试1 [1] => 测试2 [2] => t3 [3] => t4 [4] =>t5 [5] => t6 )
然后在最后你有这个代码...
print_r(implode(',',$rebuiltPartsfiltered));
这是将数组值打印为逗号分隔的字符串。生成此输出:
测试1,测试2,T3,T4,T5,T6