javascript - 如何使用 jQuery 通过 ajax 调用 php 类方法但不需要任何 php 处理程序文件

标签 javascript php jquery ajax

如何使用 jQuery 通过 ajax 调用 PHP 类方法,但不需要任何 PHP 处理程序文件。

这是我的 PHP 类 Animal.php:-

<?php

class animal
{     
  function getName()
  {
    return "lion";
  }
}
?>

jQuery:-

<script type=text/javascript>
  $.ajax({
    type: "POST",
    data: {
      abc:animal;
    },
    url: "animal.php",
    dataType: "html",
    async: false,
    success: function(data) {
      alert(data);
    }
  });    
</script>

我想在 jquery 中直接调用 getName() 方法,不需要 PHP 类和 jQuery 之间的任何其他处理程序文件。

参数数据可以是任何东西,但成功后我需要成功数据中的“狮子”。

请帮忙。

最佳答案

你的PHP文件只不过是一个类,一个对象的定义。除非您创建该类的实例,否则它不会真正被“执行”(什么也不做,只是定义)。无论你想要实现什么,你都无法以你想要的方式实现它。但这里有一个替代示例,您的类将创建自身的一个实例,并根据您使用 AJAX 发送的内容调用一个方法:

向 jQuery 添加方法,例如:

<script type=text/javascript>
  $.ajax({
    type: "POST",
    data: {
      'animal':animal,
      'method':"getName"
    },
    url: "animal.php",
    dataType: "html",
    async: false,
    success: function(data) {
      alert(data);
    }
  });    
</script>

然后在 PHP 中:

class Animal
{     
  function getName()
  {
    return "lion";
  }
}
(new Animal)->{$_POST['method']}();

注意:PHP 5.4 中添加了实例化时的类成员/方法访问

Reference

编辑

您的类方法返回“lion”,但返回到 php、服务器端,而不是返回到客户端,因此我们必须输出类似于 echovar_dump() 函数..

function getName()
{
   echo "lion";
}

关于javascript - 如何使用 jQuery 通过 ajax 调用 php 类方法但不需要任何 php 处理程序文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36542643/

相关文章:

javascript - 与 puppeteer 师 : How can I get an iframe from its parent element selector?

javascript - 如何使用JQuery获取tr值

javascript - 在本地服务器而非实时服务器上发送 AJAX/PHP 表单

jQuery 检测附加元素中的事件

javascript - 列表上的倒计时器为每个列表项提供相同的计时器结果

java - 413 全头错误

javascript - jQuery UI 可拖动到可滚动的 div 中

php - 如何从命令行运行用 PHP 编写的 Selenium 测试

php - MVC 面向对象技术 - 如何最小化查询并保持灵活性?

javascript - 使用另一个属性选择属性值