Las contribuciones de los usuarios en php.net tienen un artículo sobre cómo ejecutar un procedimiento almacenado usando sqlsrv-prepare.
En caso de que se elimine de las contribuciones de los usuarios de php.net en el futuro, esto es lo que tenía (ha) enumerado:
$procedure_params = array(
array(&$myparams['Item_ID'], SQLSRV_PARAM_OUT),
array(&$myparams['Item_Name'], SQLSRV_PARAM_OUT)
);
// EXEC the procedure, {call stp_Create_Item (@Item_ID = ?, @Item_Name = ?)} seems to fail with various errors in my experiments
$sql = "EXEC stp_Create_Item @Item_ID = ?, @Item_Name = ?";
$stmt = sqlsrv_prepare($conn, $sql, $procedure_params);
Aquí está la página del manual, http://php.net/manual/en/ función.sqlsrv-prepare.php