I'm writing a small class for a website, below is my code:
class Main {
public function GetLang() {
global $link ;
$get_lang_id = $link->query("SELECT `lang_id`,`lang_short`, `lang_name`, `lang_dir` FROM langs");
return $get_lang_id;
}
}
Now to the question. instead of doing
$Main = new Main;
$GetLangOptions = $Main->GetLang();
while($LangOptions = $GetLangOptions -> fetch_array()){
//do something
}
can i add the fetch_array() chunk to the function GetLang() like below?
class Main {
public function GetLang() {
global $link ;
$get_lang_id = $link->query("SELECT `lang_id`,`lang_short`, `lang_name`, `lang_dir` FROM tjcg_langs");
$LangDetails = $get_lang_id -> fetch_array();
return $LangDetails;
}
}
and if yes .. how can i get the results after calling the function?
SOLUTION: Using Santosh Achari's answer with the help of the voted answer here i managed the following:
class Main {
public function GetLang() {
global $link ;
$get_lang_id = $link->query("SELECT `lang_id`,`lang_short`, `lang_name`, `lang_dir` FROM tjcg_langs");
$rows = array();
while($get_lang=$get_lang_id->fetch_array(MYSQLI_ASSOC)){
$rows[] = $get_lang;}
return $rows;
}
}
$Main = new Main;
$GetLangOptions = $Main->GetLang();
foreach($GetLangOptions as $LangOption){
echo $LangOption['lang_short'];
}