Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

PHP - call function in object with set_error_handler()

Tags:

php

I am trying to use this in my page class. I only just started using objects in PHP so I'm still a little clueless (but learning as much as I can). This is in my page() function (so called when there is a new instance of page)

set_error_handler('$this->appendError');

This is causing an error

Warning: set_error_handler() expects the argument (appendError) to be a valid callback

Now how do I set a class internal function whilst passing the function as a string. Is this not possible? Should I use a normal function which then calls the class function and sends through all arguments? This sounds a little cumbersome to me.

Or have I missed the problem? I've tried making my appendError return a string, and echo.. but it still isn't playing nice.

Any help would be greatly appreciated.

Thank you!!

like image 968
alex Avatar asked Nov 26 '08 04:11

alex


1 Answers

Few problems with that.

First:

'$this->appendError'
is a nogo. It doesn't interpret $this to the current class, php interprets it as the string '$this'.

Second: Try

set_error_handler(array($this, 'appendError'));

If that doesn't work, replace $this with the classname and use it statically.

like image 166
Ray Avatar answered Oct 22 '22 12:10

Ray