1

I have to execute one php file via commandline in my linux docker and I am able to execute it but the issue is that js code written in the same file is not getting executed and I am not able to achieve the desired functionality. So please direct with me in correct direction.

3
  • 1
    JavaScript runs in the user's browser. If there's no browser it doesn't run. Can you rewrite the JS functionality in PHP? Commented Feb 2, 2018 at 13:14
  • Javascript need to be interpreted. PHP cannot do this. It only interprets PHP sources. Commented Feb 2, 2018 at 13:14
  • php can certainly start the js interpretter though' Commented Feb 2, 2018 at 13:27

2 Answers 2

3

You have to use exec or passthru and execute the js with Node in PHP to start the JS interpretter...

I just ran this test from the Mac command line

# Made a directory to test in
$ mkdir jsphptest && cd jsphptest

# made a test php file
$ touch test.php

# put some PHP code in the PHP file that tells it to run a javascript file
$ echo '<?php passthru("node test.js"); ?>' > test.php

# create the above references js file
$ touch test.js

# Put some JS code in the new JS file that logs some stuff into the console
$ echo 'console.log("this is javascript");' > test.js

# run the php file
$ php test.php

#outputs: this is javascript
Sign up to request clarification or add additional context in comments.

Comments

-1

javascript is client based language so you can not execute it this way. Javascript is being executed by browser

If you persist to execute it . Look at this link How do you run JavaScript script through the Terminal?

2 Comments

Not browsers, by javascript engines, usually used in web browsers.
I said it generally

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.