You are here: Re: $parts = $struct->parts; « PHP Programming Language « IT news, forums, messages
Re: $parts = $struct->parts;

Posted by bill on 06/16/07 10:57

Jerry Stuckle wrote:
> bill wrote:
>> Captain Paralytic wrote:
>>> On 14 Jun, 11:14, bill <nob...@spamcop.net> wrote:
>>>>> On Jun 13, 9:19 pm, bill <nob...@spamcop.net> wrote:
>>>>>> Turning on error_reporting(E_ALL); was quite an eye opener as to
>>>>>> how much "fixing" PHP will do for the sloppy coder.
>>>>>> I fixed all of the errors except:
>>>>>> Notice: Undefined property: parts in
>>>>>> /ContactManagement/contact_mainpage.php on line 120
>>>>>> where the line in question is:
>>>>>> $parts = $struct->parts;
>>>>>> where $struct = = imap_fetchstructure($in, $mid);
>>>>>> $struct is an object, parts is an array of objects
>>>>>> what would the correct syntax of the statement be ?
>>>>>> bill
>>>> petersprc wrote:
>>>>
>>>> > If you var_dump($struct) right before that line, what do you
>>>> see? It's
>>>> > probably false or otherwise invalid. Maybe because it wasn't
>>>> defined
>>>> > or the imap function had a problem.
>>>>
>>>> here is the dump
>>>> object(stdClass)(12) { ["type"]=> int(0) ["encoding"]=> int(0)
>>>> ["ifsubtype"]=> int(1) ["subtype"]=> string(5) "PLAIN"
>>>> ["ifdescription"]=> int(0) ["ifid"]=> int(0) ["lines"]=>
>>>> int(2) ["bytes"]=> int(27) ["ifdisposition"]=> int(0)
>>>> ["ifdparameters"]=> int(0) ["ifparameters"]=> int(1)
>>>> ["parameters"]=> array(2) { [0]=> object(stdClass)(2) {
>>>> ["attribute"]=> string(7) "CHARSET" ["value"]=> string(10)
>>>> "ISO-8859-1" } [1]=> object(stdClass)(2) { ["attribute"]=>
>>>> string(6) "FORMAT" ["value"]=> string(6) "flowed" } } }- Hide
>>>> quoted text -
>>>>
>>>> - Show quoted text -
>>>
>>> So there you have the answer, parts is not listed.
>>>
>> Well, that was simple.
>> in a 1 part message, parts is empty.
>> Ok, I will ignore that error because in the next line I check to see
>> if $parts is empty
>>
>> Can anyone suggest a way of writing this so that the Notice error
>> would not pop up when parts does not exist - or is it worth it to
>> write super clean code ?
>>
>> Here is the code segment:
>> $struct = imap_fetchstructure($in, $mid);
>> $parts = $struct->parts;
>> $i = 0;
>> if (!$parts) { /* Simple message, only 1 piece */
>> $attachment = array(); /* No attachments */
>> $content = imap_body($in,$mid );
>> }
>> else { /* Complicated message, multiple parts */
>> stuff-------
>> }
>>
>> bill
>
> if (isset($struct->parts)) { ...
>
> And yes, it is worth it to write clean code.
>

Thank you

bill

 

Navigation:

[Reply to this message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация