Problem: The script the following is only going to run whether it's listed on the page. If it is enqueued it fails. I suppose the reason being if it is enqueued then your php isn't processed, but I'm not sure enough to be certain.

Question Can there be in whatever way to call the script or perhaps is it simply a simple requirement that any script that contains php needs to be on the page?

Thanks

<script type="text/javascript">
jQuery(document).ready(function() {
jQuery('#buttonLink').dialog({autoOpen: false});
var readerStatus="<?php echo $_COOKIE['readerStatus'];?>";

if (readerStatus=="tester")  
    {
    jQuery("#buttonLink").dialog('open');
    }
});
</script>

Simply make your exterior javascript file like common.js.php and also have php output the information as javascript. You'll be able to include whatever PHP variables you'll need within your script.

<?php 
header('Content-type: application/javascript');
?>
jQuery(document).ready(function() {
jQuery('#buttonLink').dialog({autoOpen: false});
var readerStatus="<?php echo $_COOKIE['readerStatus'];?>";

if (readerStatus=="tester")  
    {
    jQuery("#buttonLink").dialog('open');
    }
});

You don't need to make use of PHP to see snacks, this can be done with javascript rather:

<script type="text/javascript">
    /**
     * taken from
     *   http://www.w3schools.com/js/js_cookies.asp 
     * but instead you can opt for the jquery cookie
     * plugin, see
     *    http://stackoverflow.com/q/2148695/367456
     */
    function getCookie(c_name)
    {
    var i,x,y,ARRcookies=document.cookie.split(";");
    for (i=0;i<ARRcookies.length;i++)
    {
      x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));
      y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);
      x=x.replace(/^\s+|\s+$/g,"");
      if (x==c_name)
        {
        return unescape(y);
        }
      }
    }

    jQuery(document).ready(function() {
        jQuery('#buttonLink').dialog({autoOpen: false});
        var readerStatus=getCookie('readerStatus');

        if (readerStatus && readerStatus=="tester")  
        {
            jQuery("#buttonLink").dialog('open');
        }
    });
</script>