mssql_fetch_object
(PHP 4, PHP 5, PECL odbtp >= 1.1.1)
mssql_fetch_object — Fetch row as object
Description
$result
)mssql_fetch_object() is similar to mssql_fetch_array(), with one difference - an object is returned, instead of an array. Indirectly, that means that you can only access the data by the field names, and not by their offsets (numbers are illegal property names).
Speed-wise, the function is identical to mssql_fetch_array(), and almost as quick as mssql_fetch_row() (the difference is insignificant).
Parameters
-
result
-
The result resource that is being evaluated. This result comes from a call to mssql_query().
Return Values
Returns an object with properties that correspond to the fetched row, or
FALSE
if there are no more rows.
Examples
Example #1 mssql_fetch_object() example
<?php
// Send a select query to MSSQL
$query = mssql_query('SELECT [username], [name] FROM [php].[dbo].[userlist]');
// Check if there were any records
if (!mssql_num_rows($query)) {
echo 'No records found';
} else {
// Print a nice list of users in the format of:
// * name (username)
echo '<ul>';
while ($row = mssql_fetch_object($query)) {
echo '<li>' . $row->name . ' (' . $row->username . ')</li>';
}
echo '</ul>';
}
// Free the query result
mssql_free_result($query);
?>
Notes
Note: Field names returned by this function are case-sensitive.
Note: This function sets NULL fields to the PHP
NULL
value.
See Also
- mssql_fetch_array() - Fetch a result row as an associative array, a numeric array, or both
- mssql_fetch_row() - Get row as enumerated array
- PHP Руководство
- Функции по категориям
- Индекс функций
- Справочник функций
- Расширения для работы с базами данных
- Расширения для работы с базами данных отдельных производителей
- Microsoft SQL Server
- mssql_bind
- mssql_close
- mssql_connect
- mssql_data_seek
- mssql_execute
- mssql_fetch_array
- mssql_fetch_assoc
- mssql_fetch_batch
- mssql_fetch_field
- mssql_fetch_object
- mssql_fetch_row
- mssql_field_length
- mssql_field_name
- mssql_field_seek
- mssql_field_type
- mssql_free_result
- mssql_free_statement
- mssql_get_last_message
- mssql_guid_string
- mssql_init
- mssql_min_error_severity
- mssql_min_message_severity
- mssql_next_result
- mssql_num_fields
- mssql_num_rows
- mssql_pconnect
- mssql_query
- mssql_result
- mssql_rows_affected
- mssql_select_db
Коментарии
<?php
/*
A simple example using mssql_fetch_object
*/
$conexao = mssql_connect("myServer","myUser","myPass");
mssql_select_db("myDB",$conexao);
$query = mssql_query("SELECT EMPRESA FROM IDENTIFICACAO ORDER BY EMPRESA;");
while ($retorno = mssql_fetch_object($query))
echo "Empresa:" . $retorno->EMPRESA;
?>
It is important to point out that the result of both
SELECT ' '
and
SELECT ''
is the string ' '.
That is, the php mssql functions will return a phantom space for any empty strings.
See http://bugs.php.net/bug.php?id=26996 and http://bugs.php.net/bug.php?id=25777
PHP does not classify this as a "bug" because the MS DBLib cannot tell the difference betwene the two cases. Earlier versions of php trim'd strings automatically.
It may be a good idea to ltrim and rtrim your results in some cases.