如何在AJAX调用中获取php类方法?

如何在AJAX调用中获取php类方法?,php,jquery,ajax,Php,Jquery,Ajax,我正在使用Phonegap创建一个移动应用程序。因为这个项目是基于服务器的,所以我使用JQuery和AJAX连接到服务器上的php文件。现在我有以下问题: 我使用AJAX调用php文件login.php $.post('http://example.com/php/login.php', { }).success( function(data){ console.log(data); }).error( function(data){

我正在使用Phonegap创建一个移动应用程序。因为这个项目是基于服务器的,所以我使用JQuery和AJAX连接到服务器上的php文件。现在我有以下问题:

我使用AJAX调用php文件login.php

$.post('http://example.com/php/login.php',
{       

}).success(
    function(data){

            console.log(data);

}).error(
    function(data){
        //return error
        console.log("Error post ajax " );           
},'json');  
在login.php中,我想使用类方法,其中类被写入另一个php文件class.php中。 所以login.php看起来像这样

<?php

   require_once('http://example.com/php/class.php');

   $test = $class->test();

   echo json_encode($test);

?>

而class.php如下所示:

<?php
class CLASS {

        public function test(){
            echo "test";
        }   
}

$class = new CLASS;
?>

但是我不能在类中使用test()方法。如果我在login.php文件中编写这个类,它当然可以工作,但这不是我想要的


有谁能告诉我如何解决这个问题吗?

您应该按照惯例在login.php中实例化这个类

这:

应该是这样的:

$test = new CLASS();
$test->test();
$class = new CLASS();
我想你说过这不是你想要的,所以这可能会解决你的问题:

您没有正确声明$class变量:

这:

应该是这样的:

$test = new CLASS();
$test->test();
$class = new CLASS();

您应该按照约定在login.php中实例化该类

这:

应该是这样的:

$test = new CLASS();
$test->test();
$class = new CLASS();
我想你说过这不是你想要的,所以这可能会解决你的问题:

您没有正确声明$class变量:

这:

应该是这样的:

$test = new CLASS();
$test->test();
$class = new CLASS();

您需要学习一些基础知识,例如,从本教程中学习,并了解一些事情。你做的很多事情都是完全错误的

require_一次('http://example.com/php/class.php');
您不包括这样的内容,而是包括服务器上的原始路径,而不是URL

require_once('/path/to/your/file/class.php')
更像这样

$test = $class->test();
当您的函数看起来像

    public function test(){
        echo "test";
    }
因此,函数必须返回值

    public function test(){
        return "test";
    }

为了实现你所尝试的。。。。首先考虑一些基础知识是我的第一个建议,请记住,我只是想帮助你,因为如果你不掌握这些基础知识和你所使用的语言,你就会更加频繁地挣扎。p> 您需要学习一些基础知识,例如从本教程中学习,并了解一些事情。你做的很多事情都是完全错误的

require_一次('http://example.com/php/class.php');
您不包括这样的内容,而是包括服务器上的原始路径,而不是URL

require_once('/path/to/your/file/class.php')
更像这样

$test = $class->test();
当您的函数看起来像

    public function test(){
        echo "test";
    }
因此,函数必须返回值

    public function test(){
        return "test";
    }

为了实现你所尝试的。。。。首先考虑一些基础知识是我的第一个建议,请记住,我只是想帮助你,因为如果你不掌握这些基础知识和你所使用的语言,你就会更加频繁地挣扎。p> 不在login.php中实例化该类的原因是什么?您应该尽可能地将PHP文件模块化,让它们只做一件事。(如果它是一个类,那么它应该只是一个类定义,等等)不在login.php中实例化该类的原因是什么?您应该尽可能地将PHP文件模块化,让它们只做一件事。(如果它是一个类,它应该只是一个类定义等)伟大的提示!阅读PSR编码标准也能给他一些好的建议!我写得有点太快了。当然,这项职能必须有所回报。我曾经理解你对require_的意思,我也在我的网站上使用过它。但phonegap的问题是,所有文件都必须是html、css或js文件。那么,在类中有几个函数的地方,我如何访问class.php呢?你只需要一个服务器来处理php文件,phonegap无法做到这一点,或者如果是iOS,你需要在objective-c中动态编写这一部分,或者如果是java中的android,并将其连接到你用phonegapGreat tips所做的事情!阅读PSR编码标准也能给他一些好的建议!我写得有点太快了。当然,这项职能必须有所回报。我曾经理解你对require_的意思,我也在我的网站上使用过它。但phonegap的问题是,所有文件都必须是html、css或js文件。那么,我如何才能访问class.php,因为我在类中有几个函数?你只需要一个服务器来处理php文件,phonegap无法做到这一点,或者如果是iOS,你需要在objective-c中动态编写这一部分,或者在java中使用android,并将其连接到您使用phonegapThanks所做的事情,以供您发表评论。我想知道为什么不在类之后实例化该类?但除此之外,出于可维护性和可读性的目的,这在phonegap应用程序中也不起作用。您希望
包含
您的类定义,然后在使用它的文件中实例化它。对不起,我不知道phonegap,所以我不能再帮你了。phonegap允许在其HTML/JS文件中进行内联PHP处理吗?我原以为不允许,但现在可以了。使用来自soulan的提示一次性使用require_中的原始服务器路径,并在login.php中实例化该类。非常感谢!谢谢你的评论。我想知道为什么不在类之后实例化该类?但除此之外,出于可维护性和可读性的目的,这在phonegap应用程序中也不起作用。您希望
包含
您的类定义,然后在使用它的文件中实例化它。对不起,我不知道phonegap,所以我不能再帮你了。phonegap允许在其HTML/JS文件中进行内联PHP处理吗?我原以为不允许,但现在可以了。使用来自soulan的提示一次性使用require_中的原始服务器路径,并在login.php中实例化该类。非常感谢!