Как найти значение по определенному ключевому слову в массиве объектов и получить его в Laravel? - PullRequest
0 голосов
/ 05 октября 2019

Как искать в массиве объектов по ключевому слову и получать этот объект, если он существует. Например -

array(
[0] => Object
    (
        [id] => 123
        [label] => 'Jone Due'
        [title] => 'Bangladeshi Laravel Expert'
    )

[1] => Object
    (
        [id] => 234
        [label] => 'Jone Due'
        [title] => 'Bangladeshi Singer'
    )
[2] => Object
    (
        [id] => 345
        [label] => 'Jone Due'
        [title] => 'Bangladeshi Actor'
    )
    ....

);

Я хочу найти title с ключевым словом Laravel, и результат, который я хочу получить -

array(
[0] => Object
    (
        [id] => 123
        [label] => Jone Due
        [title] => Bangladeshi Laravel Expert
    )
);

Возможно ли это?

1 Ответ

1 голос
/ 05 октября 2019

Попробуй дальше. У меня это работает:

<code> $i = 0;      // counter
 $ar = [];    // array of indexes of success objects
 $ar2 = [];   // result array of objects which title has 'Laravel' inside

// $obj_ar must be consists of  objects (it should has some checking code for that requirement)

// filling an array of indexes $ar
 foreach ($obj_ar as $obj_1){
     if (strstr($obj_1->title,'Laravel')) array_push ($ar, $i);
     $i++; 
 }

// building a result array of objects  
 $count_ar = count($ar);

 if ($count_ar>0) {
     for($o = 0; $o < $count_ar; $o++){
        array_push ($ar2, $obj_ar[$o]);
     }
 }

// result array of objects
echo '<pre>';
print_r($ar2);
echo '
';

или чуть более быстрый путь:

<code> $i = 0;      // counter 
 $ar2 = [];   // result array of objects which title has 'Laravel' inside

// $obj_ar must be consists of  objects (it should has some checking code for that requirement)

// filling an array of indexes $ar
 foreach ($obj_ar as $obj_1){
     if (strstr($obj_1->title,'Laravel')) array_push ($ar2, $obj_ar[$i]);
     $i++; 
 }

// result array of objects
echo '<pre>';
print_r($ar2);
echo '
';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...