How to send 500 Internal Server Error error from a PHP script
I need to send "500 Internal Server Error" from an PHP script under certain conditions. The script is supposed to be called by a third party app. The script contains a couple of `die("this happend")` statements for which I need to send the `500 Internal Server Error` response code instead of the usual `200 OK`. The third party script will re-send the request under certain conditions which include not receiving the `200 OK` response code.

Second part of the question: I need to setup my script like this:

    <?php
        custom_header( "500 Internal Server Error" );
    
        if ( that_happened ) {
            die( "that happened" )
        }
    
        if ( something_else_happened ) {
            die( "something else happened" )
        }
    
        update_database( );
    
        // the script can also fail on the above line
        // e.g. a mysql error occurred

        remove_header( "500" );
    ?>

I need to send `200` header only after the last line has been executed.
How to send 500 Internal Server Error error from a PHP script
===

I need to send "500 Internal Server Error" from an PHP script under certain conditions. The script is supposed to be called by a third party app. The script contains a couple of `die("this happend")` statements for which I need to send the `500 Internal Server Error` response code instead of the usual `200 OK`. The third party script will re-send the request under certain conditions which include not receiving the `200 OK` response code.

Second part of the question: I need to setup my script like this:

    <?php
        custom_header( "500 Internal Server Error" );
    
        if ( that_happened ) {
            die( "that happened" )
        }
    
        if ( something_else_happened ) {
            die( "something else happened" )
        }
    
        update_database( );
    
        // the script can also fail on the above line
        // e.g. a mysql error occurred

        remove_header( "500" );
    ?>

I need to send `200` header only after the last line has been executed.