No vas a poder llamar directamente a esa función puesto que el clic se realiza en el lado del cliente y tu función está en otro archivo que se ejecuta en el lado del servidor. Incluso así estuviera en el mismo archivo, si es código PHP, no podrá ejecutarlo desde JavaScript.
En su lugar, puedes realizar una petición asíncrona (AJAX), de tal modo que haces la petición al archivo PHP en cuestión, este realiza el procesamiento y devuelve una respuesta, misma que mostrarás en alguna parte del archivo inicial.
Un ejemplo:
Código Javascript
:
Ver original/* Archivo JS incluido en el archivo inicial */
document.querySelector("#foo").addEventListener("click", function(){
var ajax = new XMLHttpRequest();
ajax.open("GET", "ejemplo.php", true);
ajax.send();
ajax.addEventListener("load", function(){
if (this.status == 200){
document.querySelector("#bar").innerHTML = this.responseText;
}
}, false);
}, false);
Código PHP:
Ver original/* Archivo PHP en el cual se encuentra la función */
function abc(){
echo 'Hola, mundo';
}
abc(); //Se realiza el llamado a la función
De esta manera, se mostrará el mensaje "Hola, mundo" en el
<div>
que se encuentra en el archivo inicial.
Un saludo