PHP Array Warning: Creating default object from empty value
11,992
You get the warning
Warning: Creating default object from empty value
because you do
$searcharticles->$postid->post_id = $postid;
Your $searcharticles
is a StdClass. You assign the property $postId
and then immediately chain off another property post_id
, which forces PHP to create a new default object.
To avoid it, put this before the chained method calls:
$searcharticles->$postid = new StdClass;
$searcharticles->$postid->post_id =$postid;
$searcharticles->$postid->title =$title;
$searcharticles->$postid->titlescore = $titlescore;
$searcharticles->$postid->quality =$quality;
Author by
Jonty5817
Updated on June 13, 2022Comments
-
Jonty5817 almost 2 years
I have taken values from a MySQL query into an array so that I can sort them. It all works well except I am getting lots of errors
Warning: Creating default object from empty value
This is so that I can sort the array based on post_id and quality
$count = 0; $searcharticles = new stdClass(); $postid = 0; while ($row = mysqli_fetch_object($result1) ) { $postid = $row->ID; $title = $row->post_title; $titlescore = $row->titlescore; $quality = $row->quality; $searcharticles->$postid->post_id =$postid; $searcharticles->$postid->title =$title; $searcharticles->$postid->titlescore = $titlescore; $searcharticles->$postid->quality =$quality; $count ++; }
Some posts on Stackexchange indicated that I should add in $searcharticles = new stdClass();
But this has not solved the problem
I am looking to remove the errors and not just suppress the warnings.
Any ideas?