• 0

ماهو الاختلاف بين {{ url('/task') }} و {{ url ()/task}} على laravel5.2؟

أستعمل إطارالعمل laravel 5.2  على مشروع سابق، وعند كتابة الكود التالي على Blade:

<form action="{{ url() }}/task" method="POST" class="form-horizontal">

أحصل على الخطأ البرمجي التالي:

Htmlentities()expect parameter 1 to be string object given.

وعند كتابة:

<form action="{{ url('/task') }}" method="POST" class="form-horizontal"> 

يعمل الكود بشكل جيد، فما هوالفرق يا ترى ؟ أريد أن أفهم؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

()url هي بالأساس وظيفة مساعدة 'helper function'، تعيد الرابط على شكل قيمة نصية String، حيث أنها Instance من Illuminate\Routing\UrlGenerator.

يمكنك التأكد من طريقة عملها من خلال الملف التالي:

src/Illuminate/Foundation/helpers.php

على Larave5.2 وَ 5.1 ()url عادة ما تُعيد قيمة نصية، بهذه الطريقة:

function url($path = null, $parameters = [], $secure = null)
{
    return app(UrlGenerator::class)->to($path, $parameters, $secure);
}

الآن في حال كان Parameter يحمل القيمة Null:

function url($path = null, $parameters = [], $secure = null)
{
    if (is_null($path)) {
        return app(UrlGenerator::class);
    }
    return app(UrlGenerator::class)->to($path, $parameters, $secure);
}

 

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن