imbayago
imbayago

Reputation: 511

Return column value in Laravel 5.2

I'm new to Laravel and here's my issue.

I have a table currentpercentage.

This is the structure of the table currentpercentage

currentpercentage(**id**, name, total_cap, current_usage, created_at, updated_at)

I'm trying to calculate percentage of current usage; based on total_cap and current usage.

total_cap = 1000, 
current_usage = 237, 
name = User Name

In my controller i've setup a query to get the value of total_cap and the value of current_usage then calculate that the percentage would be.

When i call my query, it returns an array with the column name (total_cap) and value (1000). Same as when i query for current_usage.

{
"currentpercentage": [
{
"total_cap": 1000
}
    ]
}

I just want the query to return just the number (1000) without the array.

This is my query

$totalcap = CurrentPercentageModel::select('total_cap')->where('name', '=', 'User Name')->get();

How do I just get the value. Or is there an easier way to calculate the percentage from one query?

CurrentPercentageModel //What I use to connect to the database. DB Model

Upvotes: 2

Views: 255

Answers (1)

Fabio Antunes
Fabio Antunes

Reputation: 22882

The problem is that you are using the get method which returns a collection even when you only have one row.

$totalcap = CurrentPercentageModel::select('total_cap')->where('name', '=', 'User Name')->get();

If you just want one record and one column value, then use the value method to get just the value of the column, more info here (you might have to scroll a little bit)

$totalcap = CurrentPercentageModel::select('total_cap')->where('name', '=', 'User Name')->value('total_cap');

Upvotes: 2

Related Questions