Laravel-excel: هل هناك طريقة لتخطي الصف الأول (الرأس)؟

تم إنشاؤها على ٢ مايو ٢٠١٩  ·  5تعليقات  ·  مصدر: Maatwebsite/Laravel-Excel

إصدارات

  • إصدار PHP: 7.2.17
  • إصدار Laravel: 5.8.15
  • إصدار الحزمة: 3.1.1

وصف

هل هناك طريقة لتخطي صف الرأس وبدء الاستيراد من الصف الثاني؟

يحب:

class UsersImport implements ToModel
{
    /**
     * <strong i="13">@param</strong> array $row
     *
     * <strong i="14">@return</strong> User|null
     */
    public function model(array $row)
    {
        return new User([
           'name'     => $row[0],
           'email'    => $row[1], 
           'password' => Hash::make($row[2]),
        ]);
    }
}

لكن ابتداء من الصف الثاني؟ لذلك لا داعي للقلق بشأن أسماء الرؤوس الخاصة بي ، فقط ترتيب أعمدتي.

التعليق الأكثر فائدة

أنا حللت مع

class UsersImport implements ToModel, WithStartRow
{
    ...

    /**
     * <strong i="6">@return</strong> int
     */
    public function startRow(): int
    {
        return 2;
    }
}

ال 5 كومينتر

أنا حللت مع

class UsersImport implements ToModel, WithStartRow
{
    ...

    /**
     * <strong i="6">@return</strong> int
     */
    public function startRow(): int
    {
        return 2;
    }
}

أعلم أنك قمت بحل هذا بالفعل ولكن هناك طريقة مضمنة للقيام بذلك:

أعلم أنك قمت بحل هذا بالفعل ولكن هناك طريقة مضمنة للقيام بذلك:

ولكن إذا كنت تستخدم WithHeadingRow فلا يمكنك الوصول إلى عناصر الصف حسب الفهرس

لطيف - جيد!

أعلم أنه مغلق ، ولكن إذا كنت تستخدم طريقة lcardosozago ، فلا تنس أن تضيف:

use Maatwebsite\Excel\Concerns\WithStartRow;

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات