Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/227.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在PHP数组中计数项目_Php_Arrays - Fatal编程技术网

在PHP数组中计数项目

在PHP数组中计数项目,php,arrays,Php,Arrays,我在计算我的数组时遇到了麻烦,有人能帮我什么忙 Array ( [2014-06-17] => Array ( [0] => Array ( [id] => 40404 [client] => Client 1 [date] => 2014-06-17T14:57:08

我在计算我的数组时遇到了麻烦,有人能帮我什么忙

Array
(
    [2014-06-17] => Array
        (
            [0] => Array
                (
                    [id] => 40404
                    [client] => Client 1
                    [date] => 2014-06-17T14:57:08+0100
                )

            [1] => Array
                (
                    [id] => 40403
                    [client] => Client 1
                    [date] => 2014-06-17T14:39:02+0100
                )

            [2] => Array
                (
                    [id] => 40402
                    [client] => Client 2
                    [date] => 2014-06-17T13:34:18+0100
                )

        )

)
我想在创建数组后对其进行过滤,使其看起来像这样

Array
(
    [2014-06-17] => Array
        (
            [Client 1] => Array
                (
                    [submitted] => 2
                )

            [Client 2] => Array
                (
                    [submitted] => 1

                )
)
目前我的代码看起来是这样的,我想我需要另一个foreach来过滤这个数组,但是我一直在过滤这个数组

    foreach ($submissions as $sortArray) {
        $dataJson[substr($sortArray['thing']['created'], 0, 10)][] = array(
            'id' => $sortArray['id'],
            'client' => $sortArray['thing']['client']['name'],
            'date' => $sortArray['thing']['created']
        );
        $filterd = $dataJson;
    }

    echo "<pre>";
    print_r($filterd);
    echo "</pre>";
foreach($sortArray形式提交){
$dataJson[substr($sortArray['thing']['created'],0,10][]=array(
'id'=>$Sortaray['id'],
'client'=>$sortArray['thing']['client']['name'],
'date'=>$sortArray['thing']['created']
);
$filterd=$dataJson;
}
回声“;
印刷品($filterd);
回声“;

您可以循环使用客户端标识符作为数组键:

$result = array();

foreach($source as $day => $orders) {
    $clients = array();
    foreach ($orders as $order) {
        if (!isset($clients[$order['client']])) {
            $clients[$order['client']] = array('submitted' => 1);
        }
        else {
            $clients[$order['client']]['submitted']++;
        }
    }
    $result[$day] = $clients;
}
像这样的

 $array = array();
 foreach($submissions as $submission){
       $array[$submission['client']]['submitted'] = isset($array[$submission['client']]['submitted'])? ($array[$submission['client']]['submitted'] + 1): 1;
 }

您可以这样做:

 $array = array();
 foreach($submissions as $submission){
       $array[$submission['client']]['submitted'] = isset($array[$submission['client']]['submitted'])? ($array[$submission['client']]['submitted'] + 1): 1;
 }