Maison >développement back-end >Problème PHP >Comment appeler la méthode php en js

Comment appeler la méthode php en js

WBOY
WBOYoriginal
2023-05-22 20:54:072661parcourir

JavaScript et PHP sont deux langages de programmation différents. Le premier s'exécute dans le navigateur, tandis que le second s'exécute côté serveur. Bien que les deux langages fonctionnent dans des environnements différents, ils peuvent interagir de manière spécifique. Dans cet article, nous présenterons comment appeler des méthodes PHP en JavaScript.

1. Utilisez AJAX pour implémenter JavaScript pour appeler les méthodes PHP

AJAX (Asynchronous JavaScript And XML) est une technologie qui transmet via JavaScript et XML. Elle peut communiquer de manière asynchrone avec le serveur sans actualiser la page entière. Cette technique peut être utilisée pour appeler des méthodes PHP en JavaScript.

L'implémentation est la suivante :

  1. Tout d'abord, vous devez créer un objet XMLHttpRequest
var xmlhttp = new XMLHttpRequest();
  1. Ensuite, vous devez créer une fonction JavaScript pour envoyer des données au serveur PHP
function sendDataToPHP(data) { 
   xmlhttp.onreadystatechange = function() {
      if (this.readyState == 4 && this.status == 200) {
         document.getElementById("result").innerHTML = this.responseText;
      }
   };
   xmlhttp.open("POST", "test.php", true);
   xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
   xmlhttp.send(data);
}

Cette fonction reçoit un paramètre data, qui sont les données à envoyer au serveur. À l'intérieur de la fonction, une fonction de rappel est d'abord créée pour traiter les données lorsque le serveur les renvoie. Lorsque la valeur de l'attribut readyState passe à 4, cela signifie que la réponse du serveur est terminée. Lorsque le code d'état HTTP est 200, cela signifie OK. Ensuite, communiquez avec le serveur PHP via la méthode open() de l'objet XMLHttpRequest, et enfin, utilisez la méthode send() pour envoyer les données au serveur.

  1. Le serveur PHP doit d'abord recevoir les données envoyées par JavaScript, puis exécuter la fonction correspondante et renvoyer le résultat.
<?php
    function myFunction($param1, $param2) {
        //TODO
        return $result;
    }
    
    $request = file_get_contents('php://input');
    $data = json_decode($request);
    $result = call_user_func_array($data->functionName, $data->params);
    echo $result;
?>

Dans cet extrait de code, une fonction myFunction qui doit être appelée en JavaScript est définie et la méthode call_user_func_array est utilisée pour transmettre des données à la fonction et l'exécuter. Enfin, la valeur de retour de la fonction est affichée dans le navigateur.

2. Utilisez Node.js pour appeler des méthodes PHP en JavaScript

Node.js est un environnement d'exécution JavaScript basé sur le moteur Chrome V8. Il s'agit d'un framework côté serveur très puissant qui peut être utilisé pour appeler des méthodes PHP en JavaScript. .

L'implémentation est la suivante :

  1. Tout d'abord, vous devez installer le plug-in PHP dans le projet
npm install php
  1. Créer un fichier JavaScript pour appeler les fonctions PHP
var php = require('php');
var result = php.myFunction('param1', 'param2');
console.log(result);

Dans cet extrait de code, utilisez le require méthode pour introduire le module php Accédez à l'environnement JavaScript et appelez la fonction PHP en utilisant la méthode php.myFunction. Enfin, imprimez la valeur de retour de la fonction sur la console.

  1. Le serveur PHP doit exporter les fonctions qui doivent être appelées en JavaScript, ce qui peut être réalisé en utilisant l'objet $GLOBAL.
<?php
    $GLOBAL['myFunction'] = function($param1, $param2) {
        //TODO
        return $result;
    };
?>

Dans cet extrait de code, l'objet $GLOBAL permet d'utiliser les fonctions PHP comme fonctions globales. Par conséquent, les fonctions PHP peuvent être appelées en JavaScript via le nom de la fonction.

Résumé :

Les deux façons ci-dessus d'appeler des méthodes PHP en JavaScript et les modules PHP sont très pratiques. En utilisant les techniques ci-dessus, vous pouvez facilement appeler des fonctions PHP en JavaScript et obtenir la valeur de retour.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn