2013-09-02 2 views
0

Вход:Как принимать значения из массива в целое число (PHP)

$sql1 = "SELECT COUNT(*) FROM matchTrip where userTripId = :tripId"; 

$stmt1 = $this->db->prepare($sql1); 

$stmt1->bindParam(':tripId', $trip, PDO::PARAM_INT);            

$temp = $stmt1->fetchObject(); 

echo(json_encode($temp)); 

Выход:

How to take value from array : 

of which json_encode looks like this: {"COUNT(*)":"7"} 

Любая помощь будет оценена.

+0

'эхо массива $ [ 'COUNT (*)'];' – xdazz

+0

Почему не итерацию по массиву и выполнить проверку? –

+0

Почему бы не напечатать $ temp, а не закодировать его .. ?? – Gautam3164

ответ

1

Почему бы вам просто не дать столбцу псевдоним в самом SQL?

$sql1 = "SELECT COUNT(*) as myCount FROM matchTrip where userTripId = :tripId"; 

Делает все остальное проще в работе.

+0

Хорошо. Но как напечатать myCount? – Ponting

+0

Получил. $ Temp-> myCount.Thanks – Ponting

0

Возможно, вы имели в виду json_decode? Вы можете просто поставить его между кавычками, и он должен работать; $array["COUNT(*)"].

Но вы также можете добавить «AS myCount» к вашему SQL.

0

, если избавиться от всех бесполезных вещей из вашего кода

$sql = "SELECT COUNT(*) FROM matchTrip where userTripId = ?"; 
$stmt = $this->db->prepare($sql); 
$stmt->execute(array($table_of_user[$i])); 
$count = $stmt->fetchColumn(); 

echo $count; 
0

Так почему бы не просто fecth как массив?

$temp = $stmt1->fetch(PDO::FETCH_ASSOC); 
echo $temp['COUNT(*)']; 
0

Просто используйте так:

$json = json_encode($temp); 

echo $json->{'COUNT(*)'}; // 7 
Смежные вопросы