Я хочу вернуть набор значений из функции до момента они существуют .... , например ....PHP - функция возврата значения динамически
function abc($i="3"){
for($a=1;$a<=$i;$a++) {
$name='t'.$i;
$$name = "ae".$a;
}
//now i am returning values
return array($t1,$t2,$t3,$t4,$t5,$t6,$t7,$t8,$t9,$t10);
//but i only want to return $t1,$t2,$t3 depending on $i
}
Спасибо ....
@therefromhere Я также создание массива в цикле, я вставить исходный код, так что вы можете понять это лучший способ
function extracting_comments($table, $fields,$condition,$order,$limit){
$query="SELECT ".$fields."
FROM ".$table."
WHERE ".$condition."
ORDER BY ".$order."
LIMIT ".$limit." ";
if($stmt = $this->conn->prepare($query)) {
$stmt->execute();
$row = array_pad(array(), $stmt->field_count, '');
$params = array();
foreach($row as $k=>$v) {
$params[] = &$row[$k];
echo $params[0];
}
call_user_func_array(array($stmt,'bind_result'),$params);
$i=0;
while($stmt->fetch()) {
$i++;
$name='t'.$i;
$$name = array();
foreach ($row as $b=>$elem) {
$atul[$b]=$row[$b];
}
$$name=$atul;
}
return array($t1,$t2,$t3,$t4,$t5,$t6,$t7,$t8,$t9,$t10);
$stmt->close();
}
}
теперь их только 5 строк данных, поэтому их нет смысла возвращения $ t6, $ t7, $ t8, $ t9, $ t10 и я хочу, чтобы это исправить, и я вызываю функцию, используя
$extract=extracting_comments($table, $fields,$condition,$order,$limit);
пожалуйста, помогите. ..thanks
спасибо много ...... artem barger проблема решена навсегда – halocursed
эй Артем .... теперь я изменил свой код в соотв. к вашему ответу, теперь это ошибка, или их лучше сделать это .... если так, пожалуйста, укажите мне в правильном направлении ... Надеюсь, вы знаете, что я пытаюсь с помощью этой функции. – halocursed
Чтобы быть честным, Я не совсем уверен, что именно вы пытаетесь сделать здесь. Но похоже, что вы создали много избыточного кода. Вероятно, стоит потратить некоторое время на чтение сайта http://php.net, чтобы лучше понять, что вы здесь используете. –