Как вывести «count» из этого массива с помощью PHP? - PullRequest
0 голосов
/ 06 сентября 2018

Я хочу, чтобы результат был

  • label_id 29 и content_text 19 = 1
  • label_id 29 и content_text 27 = 1
Array
(
    [0] => Array
        (
            [row_id] => 70
            [content_id] => 354
            [label_id] => 28
            [type_id] => 6
            [label_name] => product
            [content_text] => 14
        )

    [1] => Array
        (
            [row_id] => 70
            [content_id] => 355
            [label_id] => 29
            [type_id] => 6
            [label_name] => location
            [content_text] => 26
        )

    [2] => Array
        (
            [row_id] => 70
            [content_id] => 356
            [label_id] => 30
            [type_id] => 6
            [label_name] => business
            [content_text] => 35
        )

    [3] => Array
        (
            [row_id] => 70
            [content_id] => 362
            [label_id] => 35
            [type_id] => 6
            [label_name] => visibility
            [content_text] => 41
        )

    [4] => Array
        (
            [row_id] => 71
            [content_id] => 365
            [label_id] => 28
            [type_id] => 6
            [label_name] => product
            [content_text] => 14
        )

    [5] => Array
        (
            [row_id] => 71
            [content_id] => 366
            [label_id] => 29
            [type_id] => 6
            [label_name] => location
            [content_text] => 27
        )

    [6] => Array
        (
            [row_id] => 71
            [content_id] => 367
            [label_id] => 30
            [type_id] => 6
            [label_name] => business
            [content_text] => 35
        )

    [7] => Array
        (
            [row_id] => 71
            [content_id] => 373
            [label_id] => 35
            [type_id] => 6
            [label_name] => visibility
            [content_text] => 42
        )

    [8] => Array
        (
            [row_id] => 74
            [content_id] => 389
            [label_id] => 28
            [type_id] => 6
            [label_name] => product
            [content_text] => 14
        )

    [9] => Array
        (
            [row_id] => 74
            [content_id] => 390
            [label_id] => 29
            [type_id] => 6
            [label_name] => location
            [content_text] => 21
        )

    [10] => Array
        (
            [row_id] => 74
            [content_id] => 391
            [label_id] => 30
            [type_id] => 6
            [label_name] => business
            [content_text] => 35
        )

    [11] => Array
        (
            [row_id] => 74
            [content_id] => 397
            [label_id] => 35
            [type_id] => 6
            [label_name] => visibility
            [content_text] => 42
        )

    [12] => Array
        (
            [row_id] => 85
            [content_id] => 420
            [label_id] => 28
            [type_id] => 6
            [label_name] => product
            [content_text] => 14
        )

    [13] => Array
        (
            [row_id] => 85
            [content_id] => 421
            [label_id] => 29
            [type_id] => 6
            [label_name] => location
            [content_text] => 18
        )

    [14] => Array
        (
            [row_id] => 85
            [content_id] => 422
            [label_id] => 30
            [type_id] => 6
            [label_name] => business
            [content_text] => 35
        )

    [15] => Array
        (
            [row_id] => 85
            [content_id] => 428
            [label_id] => 35
            [type_id] => 6
            [label_name] => visibility
            [content_text] => 42
        )

    [16] => Array
        (
            [row_id] => 136
            [content_id] => 531
            [label_id] => 28
            [type_id] => 6
            [label_name] => product
            [content_text] => 14
        )

    [17] => Array
        (
            [row_id] => 136
            [content_id] => 532
            [label_id] => 29
            [type_id] => 6
            [label_name] => location
            [content_text] => 27
        )

    [18] => Array
        (
            [row_id] => 136
            [content_id] => 533
            [label_id] => 30
            [type_id] => 6
            [label_name] => business
            [content_text] => 35
        )

    [19] => Array
        (
            [row_id] => 136
            [content_id] => 539
            [label_id] => 35
            [type_id] => 6
            [label_name] => visibility
            [content_text] => 42
        )

    [20] => Array
        (
            [row_id] => 56
            [content_id] => 258
            [label_id] => 28
            [type_id] => 6
            [label_name] => product
            [content_text] => 14
        )

    [21] => Array
        (
            [row_id] => 56
            [content_id] => 259
            [label_id] => 29
            [type_id] => 6
            [label_name] => location
            [content_text] => 24
        )

    [22] => Array
        (
            [row_id] => 56
            [content_id] => 261
            [label_id] => 30
            [type_id] => 6
            [label_name] => business
            [content_text] => 35
        )

    [23] => Array
        (
            [row_id] => 56
            [content_id] => 267
            [label_id] => 35
            [type_id] => 6
            [label_name] => visibility
            [content_text] => 41
        )

)

Ответы [ 4 ]

0 голосов
/ 06 сентября 2018

Пожалуйста, попробуйте этот код.

$query="select * From user";
$queryResult = $db->query($query);
$result = $queryResult->fetch();
echo $result['count'];
0 голосов
/ 06 сентября 2018

Если вы хотите получить счетчик уникального поля label_id & context_text, затем повторно введите входной массив с тем полем, которое вы хотите, а затем просто используйте функцию count для подсчета.

Я не совсем уверен в вашем вопросе, но я подумал, что вы хотите вывод, подобный этому.

0 голосов
/ 06 сентября 2018

Если вы хотите сосчитать элемент массива с ключом / ключами с определенным значением, используйте следующий код.

<?php

// By Moustafa Elkady

function count_by_key_value($arr,$search)
{
    $count = 0;

    foreach ($arr as $array_elements) {
        $matched = 0;
        foreach ($search as $search_key => $search_value) {
            if (isset($array_elements[$search_key]) && $array_elements[$search_key] == $search_value) {
                $matched++;
            }
        }

        if ($matched == count($search)) {
            $count++;
        }

    }

    return $count;
}


$arr = [

    [
        'label_id' => 29,
        'content_text' => 19
    ],

    [
        'label_id' => 29,
        'content_text' => 19
    ],

    [
        'label_id' => 2,
        'content_text' => 19
    ],

];

var_dump(count_by_key_value($arr,['label_id' => 2,'content_text' => 19]));
0 голосов
/ 06 сентября 2018

Вы можете использовать эту функцию echo count( $arrayResult); но ваш вопрос не ясен .....

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...