@ali.bayat
من این کد که یک apiست رو نوشتم اما وقتی به جای echo ازreturn استفاده میکنم فقط یک if رو اجرا میکنه اما زمانی که echo قرار میدم همه رو درست انجام میده اما خروجی در postman خیلی بد هست به جای echo چه چیزی استفاده کنم اگه با return هم راه داره بگید
while($i<=$count-1){
$t1=$t->pluck('id')[$i];
$t0=$t->pluck('if_i')[$i];
$t2=$t->pluck('state')[$i];
$t3=$t->pluck('value')[$i];
$t4=$t->pluck('target')[$i];
$t5=$t->pluck('do_i')[$i];
$t6=$t->pluck('from')[$i];
$t7=$t->pluck('to')[$i];
if($t2=='is equal to'){
if($t3){
echo response([
'data' => [
'message0' => $t6,//مقدار value $t6رو بردار
'message1' => $t7//مقدار valueبالا رو داخل valueاین متغییر قرار بده
]
]);
}
}elseif ($t2=='is not equal to'){
//if(User::where('id',$t1)->where('value','=',$t3)){
// }else{
echo response([
'data' => [
'message2' => $t6,//مقدار value $t6رو بردار
'message3' => $t7//مقدار valueبالا رو داخل valueاین متغییر قرار بده
]
]);
//}
}elseif($t2=='contains'){
$ty=UpdateModel::where('id',$t1)->where('value','LIKE','%'."{$t3}".'%');
if($ty){
echo response([
'data' => [
'message4' => $t6,//مقدار value $t6رو بردار
'message5' => $t7//مقدار valueبالا رو داخل valueاین متغییر قرار بده
]
]);
}
}elseif ($t2=='does not contain'){
return response([
'data' => [
'message6' => $t6,//مقدار value $t6رو بردار
'message7' => $t7//مقدار valueبالا رو داخل valueاین متغییر قرار بده
]
]);
}elseif($t2=='starts with'){
if(UpdateModel::where('id',$t1)->where('value','LIKE',"{$t3}".'%'))
echo response([
'data' => [
'message8' => $t6,//مقدار value $t6رو بردار
'message9' => $t7//مقدار valueبالا رو داخل valueاین متغییر قرار بده
]
]);
}elseif($t2=='doesnt start with'){
if(UpdateModel::where('id',$t1)->where('value','LIKE','%'."{$t3}".'%'))
echo response([
'data' => [
'message10' => $t6,//مقدار value $t6رو بردار
'message11' => $t7//مقدار valueبالا رو داخل valueاین متغییر قرار بده
]
]);
}elseif($t2=='ends with'){
if(UpdateModel::where('id',$t1)->where('value','LIKE','%'."{$t3}"))
echo response([
'data' => [
'message12' => $t6,//مقدار value $t6رو بردار
'message13' => $t7//مقدار valueبالا رو داخل valueاین متغییر قرار بده
]
]);
}elseif($t2=='doesnt end with'){
if(UpdateModel::where('id',$t1)->where('value','LIKE','%'."{$t3}".'%'))
echo response([
'data' => [
'message14' => $t6,//مقدار value $t6رو بردار
'message15' => $t7//مقدار valueبالا رو داخل valueاین متغییر قرار بده
]
]);
}elseif ($t2=='is empty'){
if(UpdateModel::where('id',$t1)->where('value',''))
echo response([
'data' => [
'message14' => $t6,//مقدار value $t6رو بردار
'message15' => $t7//مقدار valueبالا رو داخل valueاین متغییر قرار بده
]
]);
}elseif ($t2=='is filled'){
echo response([
'data' => [
'message14' => $t6,//مقدار value $t6رو بردار
'message15' => $t7//مقدار valueبالا رو داخل valueاین متغییر قرار بده
]
]);
}else{}
$i++;
}
سلام.
میتونین یک متغیر response رو در بالای کد هاتون قبل while تعریف کنین و هر بار در if ها ایندکس های موردنظرتون رو به متغییر اضاف کنین و در اخر بعد از while متغییر رو return کنین.
به عنوان مثال:
$response=[
'data'=>[]
];
if (1==1)
{
$response[]['data']['message1']='1==1 is true';
}
elseif (1!=1){
$response[]['data']['message2']='1==1 is false';
}
else{
$response[]['data']['message3']='correct value!';
}
return response($response);
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟