Jump to content

[SOLVED] PHP Notice: Undefined offset:


rbragg

Recommended Posts

I'm getting the PHP Notice:  Undefined offset: error. I am developing a pdf and the problem arises when I wordwrap(). You have to tell the pdf to wrap because new lines are not automatically created, nor are they able to be created with (concatenated) html. The offset number will ALWAYS be the last line.

 

Here is my script:

 

<?php
$display = pdf_findfont($pdf, "Courier", "host", 0); pdf_setfont($pdf, $threeC, ;
pdf_show_xy($pdf, " ", 40, 694);
$stringWrapped = wordwrap($string, 115, "|");
$array = explode("|", $stringWrapped);
$i = 0;
while ($array[$i] != "")
{
pdf_continue_text($pdf, $array[$i]);
$i++;
}
?>

 

So, if this script counts 4 lines, I will get: PHP Notice:  Undefined offset: 4. How can I keep from getting this error other than turning them off on the server? Thanks.

Link to comment
https://forums.phpfreaks.com/topic/81391-solved-php-notice-undefined-offset/
Share on other sites

Use a foreach or a for loop instead of the while loop:

Foreach:

<?php
$display = pdf_findfont($pdf, "Courier", "host", 0); pdf_setfont($pdf, $threeC, ;
pdf_show_xy($pdf, " ", 40, 694);
$stringWrapped = wordwrap($string, 115, "|");
$array = explode("|", $stringWrapped);
foreach ($array as $txt)
    if ($txt != "")
pdf_continue_text($pdf, $txt);
?>

 

For:

<?php
$display = pdf_findfont($pdf, "Courier", "host", 0); pdf_setfont($pdf, $threeC, ;
pdf_show_xy($pdf, " ", 40, 694);
$stringWrapped = wordwrap($string, 115, "|");
$array = explode("|", $stringWrapped);
for ($i=0;$i<count($array);$i++)
   if ($array[$i] != "")
pdf_continue_text($pdf, $array[$i]);
?>

 

Ken

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.