Да, создайте отдельный PHP-файл, который вызывает эту функцию и выводит вывод. Затем загрузите этот php-файл с помощью запроса AJAX.
Поскольку PHP является языком на стороне сервера, а jQuery (JavaScript) - на стороне клиента, вы не можете напрямую вызывать с ним функцию PHP, самое большее, что вы можете сделать, это загрузить файл. Однако, если файл имеет что-то вроде <?php echo($object->function()); ?>
, вы можете загрузить файл, по сути вызывая функцию.
Я не уверен, что (ваше дополнение) правильно.
В произвольном файле у вас есть функция PHP:
<?php
// Called "otherfile.php"
// Function you're trying to call
function doSomething($obj)
{
$ret = $obj + 5;
return($ret);
}
?>
И у вас есть файл (назовите его ajaxcall.php), который вы загрузите с этим вызовом AJAX.
<?php
include("otherfile.php"); // Make the file available, be aware that if that file
// outputs anything (i.e. not wrapped in a function) it
// may be executed
// Grab the POST data from the AJAX request
$obj = $_POST['obj'];
echo($doSomething());
?>