• 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
foreach with different value results is correct but i got error message

#1
Help me please.

Results from print_r($response->results)
Code:
[13] => stdClass Object ( [id] => 738573 [title] => Operation Finale )
[14] => stdClass Object ( [id] => 442249 [title] => The First Purge )
[15] => stdClass Object ( [id] => 79696 [name] => Manifest )

my view
Code:
<? foreach ($response->results as $v){
    $retVal = ($v->title) ? $v->title : $v->name ;
    echo $retval;
<? } ?>

If i use code above, results is correct but i get error message: Undefined property: stdClass::$title.
i know that is uncorrect because foreach for array [15] is false (not results).

how i can fix it.
Reply

#2
isset or property_exists ?
Reply

#3
(10-03-2018, 12:08 PM)DELE Wrote: Help me please.

Results from print_r($response->results)
Code:
[13] => stdClass Object ( [id] => 738573 [title] => Operation Finale )
[14] => stdClass Object ( [id] => 442249 [title] => The First Purge )
[15] => stdClass Object ( [id] => 79696 [name] => Manifest )

my view
Code:
<? foreach ($response->results as $v){
    $retVal = ($v->title) ? $v->title : $v->name ;
    echo $retval;
<? } ?>

If i use code above, results is correct but i get error message: Undefined property: stdClass::$title.
i know that is uncorrect because foreach for array [15] is false (not results).

how i can fix it.

If you are completely sure that $v will always have a "name" property if there is no "title" then try this.

PHP Code:
foreach ($response->results as $v){
 
   echo  isset($v->title) ? $v->title $v->name ;

Reply

#4
(10-03-2018, 05:22 PM)dave friend Wrote:
(10-03-2018, 12:08 PM)DELE Wrote: Help me please.

Results from print_r($response->results)
Code:
[13] => stdClass Object ( [id] => 738573 [title] => Operation Finale )
[14] => stdClass Object ( [id] => 442249 [title] => The First Purge )
[15] => stdClass Object ( [id] => 79696 [name] => Manifest )

my view
Code:
<? foreach ($response->results as $v){
    $retVal = ($v->title) ? $v->title : $v->name ;
    echo $retval;
<? } ?>

If i use code above, results is correct but i get error message: Undefined property: stdClass::$title.
i know that is uncorrect because foreach for array [15] is false (not results).

how i can fix it.

If you are completely sure that $v will always have a "name" property if there is no "title" then try this.

PHP Code:
foreach ($response->results as $v){
 
   echo  isset($v->title) ? $v->title $v->name ;


[SOLVED]

Thank you master.
Reply

#5
(10-03-2018, 01:08 PM)Piotr Wrote: isset or property_exists ?

for now i use isset. because if i use property_exists there is still an error message.

can you give me an example of using property_exists
Reply

#6
If you have error then use isset(). Looks like property_exists() was just bad idea. I wrote this as quick reply without testing.
Reply


Digg   Delicious   Reddit   Facebook   Twitter   StumbleUpon  


Users browsing this thread:
1 Guest(s)


  Theme © 2014 iAndrew  
Powered By MyBB, © 2002-2019 MyBB Group.