2013/5/7 Thomas Anderson <zeln...@gmail.com>

>
>
> On Tue, May 7, 2013 at 2:04 PM, Sebastian Krebs <krebs....@gmail.com>wrote:
>
>>
>>
>>
>> 2013/5/7 Thomas Anderson <zeln...@gmail.com>
>>
>>> If you do user_error('whatever') it'll show, as the line number for that
>>> error, the line number on which that user_error() call is made.  It'd be
>>> nice if you could control the line number and file name that was
>>> displayed.
>>> eg.
>>>
>>> <?php
>>> function test() {
>>>     user_error('whatever');
>>> }
>>>
>>> test();
>>> ?>
>>>
>>> That'll say "Notice: whatever in ... on line 4" (ie. the line that the
>>> user_error is on) instead of "Notice: whatever in ... on line 7" (ie. the
>>> line that the call to the test() function is made).
>>>
>>
>> Something I don't understand: You call test() in line 7 and line triggers
>> the error, so in fact it is _really_ line 3, that causes the message. So
>> why should it display "line 7", when it is obvious the wrong line?
>>
>>
> I thought half the point of OOP was to abstract away the internals and as
> is the error messages don't make much sense unless you *do* consider the
> internals.
>

Part of OOP are Exceptions.


>
> Like let's say you have a bignum library and you're doing
> $fifteen->divide($zero) on line 5 of test.php. Seems to me that it'd be
> more useful to say "error: division by zero" on line 5 of test.php instead
> of line line xx of file yy. It's like...
>

Somebody else already mentioned, that he wants to trigger notices at first,
but here the application is broken. So (see above) Exception is more
apropriate.


>
> "ooh - let me try to find where I'm doing division by zero. Let me to line
> xx of file yy that I didn't even write and don't know a thing about. ok...
> so it looks like that's in the private _helper_function(). And
> _helper_function() is called by 15x other public functions. I give up!"
>

You should have validated the input parameters before every of the 15 calls.


>
> As an end user of a library you shouldn't have to actually look into that
> library if you're the one who's not properly handling something.
>

In an ideal world you are propably right, but this is rarely
possible/useful.




-- 
github.com/KingCrunch

Reply via email to