سلام
خسته نباشید
ی سوال داشتم دوستان
ممنون میشم راهنماییم کنید
من چطوری میتونم در کد زیر شماره موبایل رو ولیدیت کنم؟
public function store(Request $request,Role $role)
{
// try{
foreach($request->all() as $key => $input) {
// dd(strpos($key, "phoneType_"));
if(strpos($key, "phoneType_") !== false) {
$phoneTypeId = str_replace("phoneType_", "", $key);
// dd( $phoneTypeId);
$data["phoneType"][$phoneTypeId] = $input;
}
}
// dd($data['phoneType']);
$validate = $request->validate([
'first_name' => ['required', 'string', 'max:120', 'min:3'],
'last_name' => ['required', 'string', 'max:120', 'min:3'],
'username' => ['required', 'string', 'max:120', 'min:3'],
'email' => ['required', 'string', 'email', 'max:255', 'unique:users'],
// 'role_id' => ['required', 'integer'],
'position' => ['required', 'string', 'max:120', 'min:3'],
'password' => ['required', 'string', 'min:8'],
'phoneBook' => 'required|array',
'phoneType' => ['required|regex:/([0-9\+\])/|min:10']
]);
// dd($data);
if (isset($_POST['status'])) {
$_POST['status'] = 1;
}else
$_POST['status']=0;
$role1= Role::where('name','contact')->first()->id;
// dd($role1);
$contact= User::create([
'first_name' => $validate['first_name'],
'last_name' => $validate['last_name'],
'username' => $validate['username'],
'email' => $validate['email'],
'role_id' => $role1,
'position' => $validate['position'],
'password' => Hash::make(( $validate['password'])),
'status' => $_POST['status']
]);
// dd($contact);
$phoneBookUser = [];
foreach( $validate["phoneBook"] as $key => $phoneBookId){
$phoneBookUser[$phoneBookId] = ["order" => 1];
}
// dd($phoneBookUser);
$phoneTypeUser = [];
if (isset($data["phoneType"])) {
foreach ($data["phoneType"] as $key => $phoneNumber) {
if (!empty($phoneNumber) || !is_null($phoneNumber)) {
$phoneTypeUser[$key] = ["phone_number" => $phoneNumber];
// $dd=$request->validate([$phoneNumber =>'regex:/([0-9\+\])/|min:10']);
// dd($dd);
}
}
}
$user = \App\Models\User::where("id", $contact->id)->first();
$user->phonebooks()->attach($phoneBookUser);
$user->phonetypes()->attach($phoneTypeUser);
// } catch(\Exception $e) {
//
// return view("user.create" , ['validationErrors' => ["failed operation"]], compact('phoneTypes', 'phoneBooks'));
// }
return redirect()->route('users');
}
خروجی $data['phoneType'] من بصورت زیر هست

@hosseinshirinegad98
مچکرم از پاسختون
اما من در واقع میخوام اون آرایه ای که فرستادم رو ولیدیت کنم
برای این قسمتش مشکل دارم
شاید پاسخ شما همینجا باشد
@samanzdev
ممنونم خیلی
ی سوال دیگه
همین رو میشه با تابع preg_match هم پیادهسازی کرد بزرگوار؟
@samanzdev
توی preg_match چطوری میتونم or رو تعریف کنم؟😥
@samanzdev
متوجه شدم
ممنونم ازتون🌺☘️