все данные конвертируются в string

Slastik

Новичок
все данные конвертируются в string

Добрый день

у меня такая проблема

есть таблица, в ней каждое поле имеет свой тип

допустим тип инт

я работаю через OCI с пхп

выбираю данные, фетчу, и в итоге всегда получаю стринг, вместо инта
то есть 0 стает "0"
данные выбираются с помощью хранимых процедур


в чем могут быть грабли
?
вот основная часть кода

PHP:
$this->stmt = oci_parse($this->connect, $gSQL);

		for($i = 0; $i < $countVars; $i++)
		{
			$j = $i +1;
			oci_bind_by_name($this->stmt,":in{$j}",$gVars[$i]);
		}

		oci_execute($this->stmt, OCI_DEFAULT);

		//проверка был ли метод выполнен успешно
		if ($this->error())
		{
			oci_free_statement($this->stmt);
			return DB_BAD;
		}

		$i=0;
		$output = array();

		// код достает данные из результатов запроса и создает переменную которая являетая результатом работы метода

                $output = oci_fetch_array($this->stmt, OCI_NUM+OCI_RETURN_NULLS);

		# осводождаем память
		oci_free_statement($this->stmt);
вот $output уже содержит стринги, хотя должен инт
 

hermit_refined

Отшельник
А с чего вы взяли, что кто-то вам должен int отдавать?
Никаких граблей нет, всё нормально.
 

Slastik

Новичок
хм, ну если в базе лежит int то как то логично предположить что и получать я буду int....
иначе зачем тогда вводить типизацию в базе?
 

hermit_refined

Отшельник
Типизация в базе нужна для оптимального хранения данных и построения индексов. А вот зачем вам нужна типизация на выводе - непонятно.
 
Сверху