Skocz do zawartości

System przyjaciół, optymalizacja funkcji


Kaspian12
 Udostępnij

Rekomendowane odpowiedzi

Witam! Mam taki oto kod:


function friends($id) {

		global $db_host,$db_user,$db_pass,$db_base,$userdata,$sex;

		$db = new mysqli($db_host,$db_user,$db_pass,$db_base);

		$sender_id = $id;

		$sql = "SELECT * FROM friends WHERE sender_id='$sender_id' OR recipient_id='$sender_id'";

		if($result=$db->query($sql)) {

			if($result->num_rows>0) {

				foreach ($result as $row) {

					if($row['status']==2) {

						if($row['sender_id']==$sender_id) {

							if(file_exists('images/avatars/'.md5($row['recipient_id']).'.png')) $avatar='images/avatars/'.md5($row['recipient_id']).'.png';

							else {

								if($sex==0) {

									$avatar='images/avatars/female.png';

								}

								else {

									$avatar='images/avatars/male.png';

								}

							}

							echo '';

						}

						else{

							if(file_exists('images/avatars/'.md5($row['sender_id']).'.png')) $avatar='images/avatars/'.md5($row['sender_id']).'.png';

							else {

								if($sex==0) {

									$avatar='images/avatars/female.png';

								}

								else {

									$avatar='images/avatars/male.png';

								}

							}

							echo '';

						}

					} else return false;

				}

			} else echo 'Brak znajomych';

		} else return false;

	}

[/code]

Krótko mówiąc wiem, że jest on nieoptymalny i czy mógłby ktoś pomóc z jego optymalizacją? tzn. Jak przerobić go żeby oparty był na returnach? Jak zwrócić pętlę foreach?

Odnośnik do komentarza
Udostępnij na innych stronach

Problem wciąż nierozwiązany? Dodaj swoją odpowiedź

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto. Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
 Udostępnij

×