$sn = 0;//increment the serial number, then add the sn to job
for($x = 0; $x<20; $x++)
{
$sn++;
$added_date = "10/10/10";
$job_title = "new job";
$salary = $sn*1000;
$cd = "27/10/2017";//the closing date
$ins = "some institution";//the institution for the vacancy
$notes = "some notes here";//any notes about the jobs
$sn_div = "<div class='sn_div'>".$sn."</div>";
$ad_div = "<div class='ad_div'>".$added_date."</div>";
$job_div = "<div class='job_div'>".$job_title."</div>";
$salary_div = "<div class='salary_div'>".$salary."</div>";
$cd_div = "<div class='cd_div'>".$cd."</div>";//cd means closing date
$ins_div = "<div class='ins_div'>".$ins."</div>";//ins means institution
$notes_div = "<div class='notes_div'>".$notes."</div>";
/*erroneous line*/$job_no = "job"+$sn;//to create the job rows
$$job_no = "<div class='job_wrapper'>".$sn_div.$ad_div.$job_div.$salary_div.$cd_div.$ins_div.$notes_div."</div>";
echo $$job_no;//and then echo each job
}
esse é o código que eu tinha que deu loop e criou novos elementos div html. O código funcionou bem e os elementos foram formados, mas recebi o mesmo aviso no error_log.
Depois de ler as outras respostas úteis, percebi que estava somando uma string e um número na linha errada. Então, mudei o código dessa linha para
/*erroneous line*/$job_no = "job"&&$sn;//this is the new variable that will create the job rows
Agora o código funciona como antes, mas sem avisos desta vez. Espero que este exemplo seja útil para alguém.
var_dump($item['quantity'], $product['price'])