在If语句中可以在Javascript中包含Php变量或URL吗?

I want to make some thing like this

my-php-file.php

  $lang = 'es';

my-js-file.js

if ($lang == es)
   {
   something-magical-happens;
   }

or like this:

if (URL == www.mydomain.com/index.php?lang=es)
   {
   something-magical-happens;
   }

you could generate js on-the-fly

my.js.php:

<?php echo "//Yes." ?>
var i = "<?php echo $_GET['lang']; ?>";

function doSomethingWithI(){
  alert(i);
}

Now, try to include

<script type="text/javascript" src="my.js.php?lang=es"></script>

in your html and you'll see :)

Edit: Check it in action here: http://h.kissyour.net/so/phpjs/

Edit: Edited example on my server to closer resemble what I wrote here.

Edit: Oh yes. Don't forget to clean your code!

In this specific case, why not simply properly set the document language and then look at that using JavaScript?

<html lang="es">

And in the script:

if (document.documentElement.getAttribute('lang') === 'es') { alert('Spanish'); }

You can – as the accepted answer indicates – generate entire javascript files with PHP. But if you are just trying to access some limited dynamic content, this is often overkill. If you are just trying to access a few variables that need to be PHP generated, inline javascript works fine. Add this to your HTML's head:

<script type="text/javascript">
  <?php if( $condition == true ) : ?>
    var variable1 = <?php $var1 ?>,
        variable2 = <?php $var2 ?>;
  <?php else: ?>
    var variable1 = <?php $var1Alt ?>,
        variable2 = <?php $var2Alt ?>;
  <?php endif; ?>
</script>

Just make sure you add this before any linked scripts depend on these variables.