在数组php中中断数组

Break an array inside array php

本文关键字:数组 中断 php      更新时间:2023-09-26

我有一个函数,它允许我为循环中的每个进程保存丢弃的对象。我正在为每个进程创建一个数组,并在里面存储掉落的项目。保存落下的项目的函数:

<script>
var LISTOBJ = {
    saveList: function() {
        $(".leader").each(function() {
          var listCSV = [];
          $(this).find("li").each(function(){
              listCSV.push($(this).text());
          });
          var values = listCSV.join(', ');
          $(".output").append("<input type='hidden' name='leader[]' value='"+values+"' />");
          $("#output").append("<p>"+values+"</p>");
              console.debug(listCSV);
        });
    }
}
</script>

打印保存的对象后得到的结果:

Array ( [0] => aaronjames,adelyn [1] => benny,bryanooi )

我想在数据库中存储名称,我能够做到这一点,但它存储一个数组。所以我正在寻找一种方法来打破数组内的数组,而不是存储一个完整的数组。我有两个表,'project' and 'process'。我正试图将名称插入'process'表。我有能力这样做。但它仍然是一个数组。这里是我用来存储数据库内接收值的函数。我正在生成项目编号,并使用foreach为每个过程分配名称

function insertRecord(){
    global $holdcode,$holdtitle,$projLeader,$projChecker,$holdremark,$holdprocess,$holdnumber,$procLeader,$procChecker, $prodStuff;
    // To protect MySQL injection (more detail about MySQL injection)
    $holdcode = cleanInputData($holdcode);
    $holdtitle = cleanInputData($holdtitle);
    $projLeader = cleanInputData($projLeader);
    $projChecker = cleanInputData($projChecker);
    $holdremark = cleanInputData($holdremark);
    $holdcode = mysql_real_escape_string($holdcode);
    $holdtitle = mysql_real_escape_string($holdtitle);
    $projLeader = mysql_real_escape_string($projLeader);
    $projChecker = mysql_real_escape_string($projChecker);
    $holdremark = mysql_real_escape_string($holdremark);
    $result = getLastProjectNo();
    if (!$result) {
        die('Invalid query: ' . mysql_error());
    }
    if(mysql_num_rows($result) == 0)
    {
        $year = date("y");
        $month = date("m");
        $number = sprintf("%04d", 1);
        $yearStr = strval($year);
        $monthStr = strval($month);
        $numberStr = strval($number);
        $projectNo = $yearStr . $monthStr . $numberStr;
    }
    else{   
        if ($row_last = mysql_fetch_array($result))
        {
            $row_last[0] = cleanOutputData($row_last[0]);
            $projectNo = $row_last[0];
            $extractedNumberStr = substr($projectNo, -4);
            $extractedYearMonthStr = substr($projectNo, 0, 4);
            $year = date("y");
            $month = date("m");
            $yearStr = strval($year);
            $monthStr = strval($month);
            $currentYearMonthStr = $yearStr . $monthStr;
            if($extractedYearMonthStr == $currentYearMonthStr)
            {
                $extractedNumber = intval($extractedNumberStr);
                $extractedNumber++;
                $extractedNumber = sprintf("%04d", $extractedNumber);
                $extractedNumberStr = strval($extractedNumber);
                $projectNo = $currentYearMonthStr . $extractedNumberStr;
            }
            else
            {
                $number = sprintf("%04d", 1);
                $projectNo = $currentYearMonthStr . $number;
            }
        }
    }
    mysql_set_charset('utf8');
    //query result
    $result = insertProject($projectNo,$_SESSION['login_user'],$holdcode,$holdtitle,$projLeader,$projChecker,$holdremark);
    // Check result
    if (!$result) {
        die('Invalid query: ' . mysql_error());
    }
    $result = getLastProjectNo();
    if (!$result) {
        die('Invalid query: ' . mysql_error());
    }
    $result = getLastProjectNo();
    if (!$result) {
        die('Invalid query: ' . mysql_error());
    }       
    if ($row_last = mysql_fetch_array($result))
    {
        $row_last[0] = cleanOutputData($row_last[0]);
        $projectNo = $row_last[0];
        if (is_array($holdprocess) || is_object($holdprocess))
        {
            foreach( $holdprocess as $code => $eq ) 
            {   
                $record = insertProcess($projectNo,$eq,$holdnumber[$code],$procLeader[$code],$procChecker[$code], $prodStuff[$code]);
                if (!$record) {
                    die('Invalid query: ' . mysql_error());
                }
            }               
        }
    }
}

我想要的是打破数组中的数组。例如,我有Array ( [0] => aaronjames,adelyn [1] => benny,bryanooi ),我需要打破[0] => aaronjames,adelyn的东西,将允许我存储每一行的每个名称在表

让我向您展示一种读取数组值的方法:

    for($x = 0; $x < count($array_name); $x++) {
    echo $array_name[$x];
    echo "<br>";
}

如果你需要访问一个对象数组,那么试试这个

foreach($array_name as $obj){
$status = $obj->status;

}

如果你从数组中收到一个组合字符串(如'aaronjames,adelyn'),那么你可以使用Php的' explosion()'函数拆分组合字符串

<?php
$str = "aaronjames,adelyn";
$str_array=(explode(",",$str));
for($i=0;$i<count($str_array);$i++)
    echo $str_array[$i]."<br/>";
?>