(PHP 4, PHP 5, PHP 7, PHP 8)
odbc_procedurecolumns — Retrieve information about parameters to procedures
$odbc,$catalog = null,$schema = null,$procedure = null,$column = nullRetrieve information about parameters to procedures.
odbcThe ODBC connection identifier, see odbc_connect() for details.
catalogThe catalog ('qualifier' in ODBC 2 parlance).
schema
       The schema ('owner' in ODBC 2 parlance).
       This parameter accepts the following search patterns:
% to match zero or more characters,
and _ to match a single character.
      
procedure
       The proc.
       This parameter accepts the following search patterns:
% to match zero or more characters,
and _ to match a single character.
      
column
       The column.
       This parameter accepts the following search patterns:
% to match zero or more characters,
and _ to match a single character.
      
   Returns the list of input and output parameters, as well as the
   columns that make up the result set for the specified procedures. 
   Returns an ODBC result identifier or false on failure.
  
The result set has the following columns:
PROCEDURE_CATPROCEDURE_SCHEMPROCEDURE_NAMECOLUMN_NAMECOLUMN_TYPEDATA_TYPETYPE_NAMECOLUMN_SIZEBUFFER_LENGTHDECIMAL_DIGITSNUM_PREC_RADIXNULLABLEREMARKSCOLUMN_DEFSQL_DATA_TYPESQL_DATETIME_SUBCHAR_OCTET_LENGTHORDINAL_POSITIONIS_NULLABLE
   The result set is ordered by PROCEDURE_CAT, PROCEDURE_SCHEM,
   PROCEDURE_NAME and COLUMN_TYPE.
  
| Version | Description | 
|---|---|
| 8.0.0 | Prior to this version, the function could only be called with either one or five arguments. | 
Example #1 List Columns of a stored Procedure
<?php
$conn = odbc_connect($dsn, $user, $pass);
$columns = odbc_procedurecolumns($conn, 'TutorialDB', 'dbo', 'GetEmployeeSalesYTD;1', '%');
while (($row = odbc_fetch_array($columns))) {
    print_r($row);
    break; // further rows omitted for brevity
}
?>
The above example will output something similar to:
Array
(
    [PROCEDURE_CAT] => TutorialDB
    [PROCEDURE_SCHEM] => dbo
    [PROCEDURE_NAME] => GetEmployeeSalesYTD;1
    [COLUMN_NAME] => @SalesPerson
    [COLUMN_TYPE] => 1
    [DATA_TYPE] => -9
    [TYPE_NAME] => nvarchar
    [COLUMN_SIZE] => 50
    [BUFFER_LENGTH] => 100
    [DECIMAL_DIGITS] =>
    [NUM_PREC_RADIX] =>
    [NULLABLE] => 1
    [REMARKS] =>
    [COLUMN_DEF] =>
    [SQL_DATA_TYPE] => -9
    [SQL_DATETIME_SUB] =>
    [CHAR_OCTET_LENGTH] => 100
    [ORDINAL_POSITION] => 1
    [IS_NULLABLE] => YES
)