0

This is not what I would consider a critical question but it has been bugging me a little.

If I have a number of mysql queries that I drop directly into an array because there is only a single result. Doing so uses a line of code such as this

$reservation['customer']=mysql_fetch_assoc(mysql_query("SELECT * FROM customers WHERE id='".$reservation['customerid']."' LIMIT 1"));

This is great and works well and is a single line which helps keep my code clean. HOWEVER, I am concerned that mysql might get bogged down over time if I do not clear the result using mysql_free_result()

Enter the question. It seems only way to perform a mysql_free_result on the query above to use something like this.

$result=mysql_query("SELECT * FROM customers WHERE id='".$reservation['customerid']."'");
$reservation['customer']=mysql_fetch_assoc($result);
mysql_free_result($result);

Is there a shorthand for this? It just seems like 3 lines of code where I should be able to do it in 1 or 2.

3
Contributors
4
Replies
24
Views
4 Years
Discussion Span
Last Post by pritaeas
1

None that I can think, but then again, I personally don't stress over an extra line of code. Maybe if I thought I could turn 300 lines of code into 30, that would be something to work towards. 3 lines of code sounds pretty neat and clean to me.

How many queries are you running that would require you to put into an array?

0

not that many. The most complex page load might have 7-8 single entry mysql queries. The real thing that I am noticing is that I can reduce my mysql load by using the mysql_free_result as much as possible.

I'm not gonna kill myself over needing an extra few lines of code but I figured it was worth the question.

Thanks.

Edited by ajbest

1

Anytime you run a query that gives back results back from the database you will want to free it up using mysql_free_results. Think of it as just being necessary everytime.

Also, just thought I would let you know in case you didn't already, mysql function in PHP has been deprecated and you should be using mysqli or PDO now (if you're using a recent version of PHP that is).

1

This is where a function comes in. Create a function for those three lines, and all other times you need to use it, a single line suffices.

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.