What you are seeing is your browser rejecting the request because either the hostname, protocol (http vs https) or port of the service you are trying to access is different than the one that is serving your page. This policy is called
CORS. You need to implement CORS in your service provider (your PHP Restful web service) to tell the browser that it is okay to make cross origin requests to that service. Your browser will automatically send what is called a 'pre-flight' request using the OPTIONS request method. It will include an 'Origin' header. Your web service must handle this options request and send an Access-Control-Allow-Origin header back with either the value of the 'Origin' header or '*'. It must also return the same header on the actual request. Otherwise, your Angular application will not be able to see the response of the request.
Before doing this, you should think about which domains should be able to make cross origin requests to your web service layer. The security implications are touched on briefly in the wikipedia article linked above.