Seyid Ahmed Khessam نشر 9 أكتوبر 2020 أرسل تقرير نشر 9 أكتوبر 2020 السلام عليكم ورحمة الله تعالى وبركاته لدي استفسار اذا كان بمقدوري تضمين دالة محجوزة داخل لغة php لمجموعة من الخصائص او المتغيرات دون تكرار العملية عند كل خاصية او متغير الكود كتالي : if (isset($_POST['signup'])){ /* User_Info */ class userInfo{ private $ufame; private $uname; private $umail; private $upass; private $uyear; private $udays; private $umonth; public function users(){ $this->ufame = $_POST['ufame']; $this->uname = $_POST['uname']; $this->umail = $_POST['umail']; $this->upass = $_POST['upass']; $this->uyear = $_POST['uyear']; $this->udays = $_POST['udays']; $this->umonth= $_POST['umonth']; } }$user = new userInfo(); $user->users(); print_r($user); } مثلا هل يمكنني تضمين دالة trim لجميع الخصائص او المتغيرات دون تكرار العملية عند كل متغير وشكرا ♥ اقتباس
0 Wael Aljamal نشر 9 أكتوبر 2020 أرسل تقرير نشر 9 أكتوبر 2020 نعم يمكننا ذلك تطبيق الدالة trim على جميع عناصر مصفوفة تطبيق trim على المصفوفة POST بتعليمة واحدة $result = array_map('trim', $source_array); شرح أكثر عن الالة array_map نضعها في أول الكود ويصبح الكود بالتالي : $_POST = array_map('trim', $_POST); if (isset($_POST['signup'])){ /* User_Info */ class userInfo{ private $ufame; private $uname; private $umail; private $upass; private $uyear; private $udays; private $umonth; public function users(){ $this->ufame = $_POST['ufame']; $this->uname = $_POST['uname']; $this->umail = $_POST['umail']; $this->upass = $_POST['upass']; $this->uyear = $_POST['uyear']; $this->udays = $_POST['udays']; $this->umonth= $_POST['umonth']; } }$user = new userInfo(); $user->users(); print_r($user); } طريقة ثانية لتطبيق الدالة على Object : <?php $obj = new stdClass; // بناء صف $obj->{' Property1'} = " value1"; $obj->{'Property2 '} = "value2 "; $newObj = new stdClass; foreach($obj as $prop => $val) { $newObj->{trim($prop)} = trim($val); // نطبق الدالة على الخاصية و القيمة سويا } $obj = $newObj; unset($newObj); var_dump($obj); 1 اقتباس
0 Seyid Ahmed Khessam نشر 9 أكتوبر 2020 الكاتب أرسل تقرير نشر 9 أكتوبر 2020 بتاريخ الآن قال Wael Aljamal: نعم يمكننا ذلك تطبيق الدالة trim على جميع عناصر مصفوفة تطبيق trim على المصفوفة POST بتعليمة واحدة $result = array_map('trim', $source_array); $_POST = array_map('trim', $_POST); if (isset($_POST['signup'])){ /* User_Info */ class userInfo{ private $ufame; private $uname; private $umail; private $upass; private $uyear; private $udays; private $umonth; public function users(){ $this->ufame = $_POST['ufame']; $this->uname = $_POST['uname']; $this->umail = $_POST['umail']; $this->upass = $_POST['upass']; $this->uyear = $_POST['uyear']; $this->udays = $_POST['udays']; $this->umonth= $_POST['umonth']; } }$user = new userInfo(); $user->users(); print_r($user); } شرح أكثر عن الالة array_map نضعها في أول الكود ويصبح الكود بالتالي : طريقة ثانية لتطبيق الدالة على Object : <?php $obj = new stdClass; // بناء صف $obj->{' Property1'} = " value1"; $obj->{'Property2 '} = "value2 "; $newObj = new stdClass; foreach($obj as $prop => $val) { $newObj->{trim($prop)} = trim($val); // نطبق الدالة على الخاصية و القيمة سويا } $obj = $newObj; unset($newObj); var_dump($obj); الطريقة الثانية هي ما ابحث عنه لكن بعض الامور لم افهمها لاني جديد بالبرمجة الكائنية مثلا طريقة بناء الصنف و {'property1'} هل يمكنك شرح الامر في نفس الكود الذي اعطيتك اياه واسف اذا اطلت عليك اخي ♥ اقتباس
0 Wael Aljamal نشر 9 أكتوبر 2020 أرسل تقرير نشر 9 أكتوبر 2020 بتاريخ 14 دقائق مضت قال Seyid Ahmed Khessam: الطريقة الثانية هي ما ابحث عنه لكن بعض الامور لم افهمها لاني جديد بالبرمجة الكائنية مثلا طريقة بناء الصنف و {'property1'} هي طريقة غير مستخدمة كثيرا في تعريف خاصية تابعة لغرض معين (بطريقة برمجية أي يمكنك تسمية الخاصية بوضع متحول و ستأخد الخاصية قيمته) (فقط وضعت المثال لتعلم أنه يمكننا فعل ذلك) تبسيط المثال : <?php $obj = new stdClass; // بناء صف $obj->Property1 = " value1"; $obj->Property2 = "value2 "; $newObj = new stdClass; foreach($obj as $prop => $val) { $newObj->$prop = trim($val); //نطبق الدالة على الخاصية } $obj = $newObj; unset($newObj); var_dump($obj); تطبيق trim على user: if (isset($_POST['signup'])){ /* User_Info */ class userInfo{ private $ufame; private $uname; private $umail; private $upass; private $uyear; private $udays; private $umonth; public function users(){ $this->ufame = $_POST['ufame']; $this->uname = $_POST['uname']; $this->umail = $_POST['umail']; $this->upass = $_POST['upass']; $this->uyear = $_POST['uyear']; $this->udays = $_POST['udays']; $this->umonth= $_POST['umonth']; foreach($this as $prop => $val) { $this->$prop = trim($val); // نطبق الدالة على الخاصية } } $user = new userInfo(); $user->users(); print_r($user); } 1 اقتباس
السؤال
Seyid Ahmed Khessam
السلام عليكم ورحمة الله تعالى وبركاته
لدي استفسار اذا كان بمقدوري تضمين دالة محجوزة داخل لغة php لمجموعة من الخصائص او المتغيرات دون تكرار العملية عند كل خاصية او متغير
الكود كتالي :
مثلا هل يمكنني تضمين دالة trim لجميع الخصائص او المتغيرات دون تكرار العملية عند كل متغير وشكرا ♥
3 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.