11/8/14

Tạo dữ liệu demo với faker


Hôm nay mình sẽ giới thiệu tới các bạn cách tạo nhanh dữ liệu với faker cho những bạn nào cần dữ liệu đẹp mà làm biếng nhập tay để demo cho khách hàng chẳng hạn. :D

Đầu tiên sẽ vào địa chỉ sau để tải library Faker về : https://github.com/fzaninotto/Faker
Trong đây có hướng dẫn rất kỉ về cách sữ dụng, mình tạo một demo đơn giản về cách sữ dụng của nó
Khi download libraby Faker về xong giải nén ra sẽ thấy thư mục src. copy thư mục đó vào project.
Cấu trúc demo của project mình như sau:



Sau đó bạn include library vào file của project và khởi tạo đối tượng faker
    include('autoload.php');
    $faker = Faker\Factory::create();

faker còn cung cấp cho ta nhiều gói provider với nhiều ngôn ngữ khác nhau như (nhưng rất tiếc chưa có ngôn ngữ viêt nam. hehe):  Faker\Provider\Lorem, Faker\Provider\en_US\Person Faker\Provider\en_US\Address, Faker\Provider\en_US\PhoneNumber, Faker\Provider\en_US\Company ...
 Để sữ dụng các provider này ta chỉ cần làm như sau :
    // Add provider
    $faker->addProvider(new Faker\Provider\en_US\Person($faker));
    $faker->addProvider(new Faker\Provider\en_US\Address($faker));
    $faker->addProvider(new Faker\Provider\en_US\PhoneNumber($faker));
    $faker->addProvider(new Faker\Provider\en_US\Company($faker));
    $faker->addProvider(new Faker\Provider\Lorem($faker));
    $faker->addProvider(new Faker\Provider\Internet($faker));
Như vậy là xong. việc tiếp theo chỉ cần dùng đối tượng faker đã khởi tạo trỏ đến các thuộc tính như vậy sẽ có được dữ liệu mong muốn để lưu cơ sở dữ liệu hoặc xuất ra ngoài html :D
<div class="container md-col-6">
      <div class="header">
        <h3 class="text-muted">Webtricktips - Tạo dữ liệu test với faker</h3>
      </div>
      <table class="table table-bordered">
      <thead>
        <tr>
          <th>#</th>
          <th>Name</th>
          <th>Email</th>
          <th>Phone</th>
          <th>Adress</th>
          <th>Website</th>
          <th>Ipdress</th>
        </tr>
      </thead>
      <tbody>
        <?php 
            for ($i=0; $i < 10; $i++) {
        ?>
               <tr>
                    <td><?php echo $faker->unique()->randomDigit; ?></td>
                    <td><?php echo $faker->name; ?></td>
                    <td><?php echo $faker->freeEmail; ?></td>
                    <td><?php echo $faker->phoneNumber ?></td>
                    <td><?php echo $faker->address; ?></td>
                    <td><?php echo $faker->url; ?></td>
                    <td><?php echo $faker->ipv4; ?></td>
                </tr>
        <?php
            }
        ?>
      </tbody>
    </table>
    <!-- Bootstrap core JavaScript
    ================================================== -->
    <!-- Placed at the end of the document so the pages load faster -->
</div>
Hy vọng bài viết sẽ giúp ích cho các bạn :)
Download demo :http://www.mediafire.com/download/8upzoip857jq709/faker.zip

Không có nhận xét nào:

Đăng nhận xét