I found out then when you use pcntl_signal in a 'deamon' script and you run it before you fork childs it does not work as expected.
instead you need to use pcntl_signal in the child code of the child you are forking
and if you want to cach signals for the 'deamon' part you should use pcntl_signal in the parent code.