Hướng dẫn php list - danh sách php

Cú pháp

Hàm list[] trong PHP có cú pháp như sau:

list [ $var1, $var2, $var3.. ]

Định nghĩa và cách sử dụng

Giống hàm array[], hàm này không thực sự là một hàm. Hàm list[] được sử dụng để gán giá trị cho một danh sách biến trong một hoạt động.

Tham số

Tham sốMiêu tả
var1 Bắt buộc. Biến thứ nhất để gán một giá trị cho nó
var2 Tùy ý. Biến thứ hai để gán một giá trị cho nó
var3 Tùy ý. Biến thứ ba để gán một giá trị cho nó

Quảng cáo

Trả về giá trị

Hàm này không trả về cái gì.

Ví dụ

Ví dụ sau minh họa cách sử dụng hàm list[] trong PHP:

 

Lưu chương trình trên trong một file có tên là test.php trong htdocs, sau đó mở trình duyệt và gõ địa chỉ //localhost:8080/test.php sẽ cho kết quả:test.php trong htdocs, sau đó mở trình duyệt và gõ địa chỉ //localhost:8080/test.php sẽ cho kết quả:

Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.

Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

Các bạn ở Hà Nội có thể tham gia khóa học thứ 9 của vietjackteam [đang tuyển sinh] vào cuối tháng 10/2018 do anh Nguyễn Thanh Tuyền, admin vietjack.com trực tiếp giảng dạy tại Hà Nội. Chi tiết nội dung khóa học tham khỏa link : Khóa học Java.Các bạn học CNTT, điện tử viễn thông, đa phương tiện, điện-điện tử, toán tin có thể theo học khóa này. Số lượng các công việc Java hoặc .NET luôn gấp ít nhất 3 lần Android hoặc iOS trên thị trường tuyển dụng. Khóa online= Đi phỏng vấn, Khóa offline= Đi phỏng vấn+ 1.5 tháng thực tập ngoài doanh nghiệp. [đang tuyển sinh] vào cuối tháng 10/2018 do anh Nguyễn Thanh Tuyền, admin vietjack.com trực tiếp giảng dạy tại Hà Nội. Chi tiết nội dung khóa học tham khỏa link : Khóa học Java.Các bạn học CNTT, điện tử viễn thông, đa phương tiện, điện-điện tử, toán tin có thể theo học khóa này. Số lượng các công việc Java hoặc .NET luôn gấp ít nhất 3 lần Android hoặc iOS trên thị trường tuyển dụng. Khóa online= Đi phỏng vấn, Khóa offline= Đi phỏng vấn+ 1.5 tháng thực tập ngoài doanh nghiệp.

Mọi người có thể xem demo nội dung khóa học tại địa chỉ Video demo khóa học OfflineVideo demo khóa học Offline

Các bạn ở xa học không có điều kiện thời gian có thể tham dự khóa Java online để chủ động cho việc học tập. Từ tháng 4/2018, VietJack khuyến mại giá SỐC chỉ còn 250k cho khóa học, các bạn có thể trả lại tiền nếu không hài lòng về chất lượng trong 1 tháng, liên hệ facebook admin fb.com/tuyen.vietjack để thanh toán chuyển khoản hoặc thẻ điện thoại, khóa học bằng Tiếng Việt với gần 100 video, các bạn có thể chủ động bất cứ lúc nào, và xem mãi mãi. Thông tin khóa học tại Khóa học Java Online trên Udemy các bạn có thể trả lại tiền nếu không hài lòng về chất lượng trong 1 tháng, liên hệ facebook admin fb.com/tuyen.vietjack để thanh toán chuyển khoản hoặc thẻ điện thoại, khóa học bằng Tiếng Việt với gần 100 video, các bạn có thể chủ động bất cứ lúc nào, và xem mãi mãi. Thông tin khóa học tại Khóa học Java Online trên Udemy

Follow fanpage của team //www.facebook.com/vietjackteam/ hoặc facebook cá nhân Nguyễn Thanh Tuyền //www.facebook.com/tuyen.vietjack để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile.... mới nhất của chúng tôi.

Các bài học PHP phổ biến khác tại VietJack::

  • PHP - Cú pháp
  • PHP - Các kiểu biến
  • PHP - Hằng [Constant]
  • PHP - Toán tử
  • PHP - Lệnh if, else, switch

tong_hop_ham_trong_php.jsp

Bài viết liên quan

  • 160 bài học ngữ pháp tiếng Anh hay nhất

  • 155 bài học Java tiếng Việt hay nhất

  • 100 bài học Android tiếng Việt hay nhất

  • 247 bài học CSS tiếng Việt hay nhất

  • 197 thẻ HTML cơ bản

  • 297 bài học PHP

  • 101 bài học C++ hay nhất

  • 97 bài tập C++ có giải hay nhất

  • 208 bài học Javascript có giải hay nhất

Cảm ơn Rico Neitzel về gợi ý. Thay vì cố gắng định dạng ngày php, hãy sử dụng strftime. Để xem 3 chữ cái đầu tiên của tên tháng bằng ngôn ngữ của bạn [Ví dụ: Dez thay vì Dec từ Dezembro chứ không phải December], hãy làm theo hướng dẫn cài đặt ngôn ngữ ở trên, sau đó:

Nội dung chính

  • 1. Cách thiết lập.
  • 1.1 Sử dụng file php
  • 1.2 Sử dụng file json
  • 2. Website thay đổi ngôn ngữ theo người dùng
  • 2.1 Sử dụng session và middleware
  • 2.2 Sử dụng subdomain
  • 2.3 Sử dụng trên url

Nội dung chính

  • 1. Cách thiết lập.
  • 1.1 Sử dụng file php
  • 1.2 Sử dụng file json
  • 2. Website thay đổi ngôn ngữ theo người dùng
  • 2.1 Sử dụng session và middleware
  • 2.2 Sử dụng subdomain
  • 2.3 Sử dụng trên url

Nội dung chính

  • 1. Cách thiết lập.
  • 1.1 Sử dụng file php
  • 1.2 Sử dụng file json
  • 2. Website thay đổi ngôn ngữ theo người dùng
  • 2.1 Sử dụng session và middleware
  • 2.2 Sử dụng subdomain
  • 2.3 Sử dụng trên url

lệnh date: date ['d M Y'] // không thể thay đổi từ tiếng Anh

setlocale[ LC_ALL, "pt_BR"]; // Portuguese, replace with your locale
echo strftime['%e %b %G'];
result: "4 Dez 2016"

/**
 * datelo funcion [date with locale]
 * Credits: Sergio Abreu 
 * //sites.sitesbr.net
 * NOTE: Depend on availability of the locale in server.
 *
 */

function datelo[ $str, $locale='en_US', $time=null]{

  if[ $time === null]{  $time = time[]; }

  if [ preg_match["/[DlFM]/", $str]]{

     setlocale[LC_ALL, $locale];

     $dict = array[ 'd'=>'%d', 'D'=>'%a', 'j'=>'%e', 'l'=>'%A', 'N'=>'%u', 'w'=>'%w', 'F'=>'%B', 
      'm'=>'%m', 'M'=>'%b', 'Y'=>'%G', 'g'=>'%l', 'G'=>'%k', 'h'=>'%I', 'H'=>'%H', 'i'=>'%M', 
      's'=>'%S', 'S'=>'', 'z'=>'%j', 'n'=>'%m', ' '=>' ', '-'=>'-', '/'=>'/', ':'=>':', ','=>','];

     $chars = preg_split["//", $str];
     $nstr = '';

     foreach [$chars as $c]{
        if [$c]{ //skip empties
          $nc = $dict[$c];
          if[ $c === 'n']{ // Fixes the extra zero
            $nc = preg_replace["/^0+/", '', strftime[ $nc]];   
          }
          elseif[ $c === 'z']{ // Fixes the extra zero and decrease 1
            $nc = preg_replace["/^0+/", '',  strftime[ $nc]]; // 023 turns 23
            $nc = intval[$nc] - 1;
          }          
          $nstr .= $nc;
        }
   }
   return strftime[ $nstr];     

  }else{ // not localized
    return date[ $str, $time];
 } 
}

-1 hữu ích 0 bình luận chia sẻ 0 bình luận chia sẻ

Các website ngày nay muốn tiếp cận với nhiều loại khách hàng thì đều cần phải sử dụng đa ngôn ngữ [i18n]. Với những ai sử dụng Laravel cho việc phát triển website thì vấn đề i18n được hỗ trợ và xử lý rất đơn giản. Bài viết này mình sẽ giới thiệu đến các bạn một số cách để xử lý i18n trong Laravel.

Nội dung chính

  • 1. Cách thiết lập.
  • 1.1 Sử dụng file php
  • 1.2 Sử dụng file json
  • 2. Website thay đổi ngôn ngữ theo người dùng
  • 2.1 Sử dụng session và middleware
  • 2.2 Sử dụng subdomain
  • 2.3 Sử dụng trên url

Nội dung chính

  • 1. Cách thiết lập.
  • 1.1 Sử dụng file php
  • 1.2 Sử dụng file json
  • 2. Website thay đổi ngôn ngữ theo người dùng
  • 2.1 Sử dụng session và middleware
  • 2.2 Sử dụng subdomain
  • 2.3 Sử dụng trên url

1. Cách thiết lập.

1.1 Sử dụng file php

  • 1.2 Sử dụng file json
2. Website thay đổi ngôn ngữ theo người dùngresources /lang /en messages.php /vi messages.php

2.1 Sử dụng session và middleware

2.2 Sử dụng subdomain return [ 'welcome' => 'Welcome to Website!', ];

lệnh date: date ['d M Y'] // không thể thay đổi từ tiếng Anh

-1 hữu ích 0 bình luận chia sẻ return [ 'welcome' => 'Chào mừng bạn đến với Website!', ];

Các website ngày nay muốn tiếp cận với nhiều loại khách hàng thì đều cần phải sử dụng đa ngôn ngữ [i18n]. Với những ai sử dụng Laravel cho việc phát triển website thì vấn đề i18n được hỗ trợ và xử lý rất đơn giản. Bài viết này mình sẽ giới thiệu đến các bạn một số cách để xử lý i18n trong Laravel.

  • Trong thư mục /resources/lang/ ta thêm các folder chứa các ngôn ngữ mà muốn chuyển đổi, như ví dụ dưới đây mình sẽ tạo 2 folder là en và vi để chứa ngôn ngữ của Tiếng Anh và Tiếng Việt.
/resources /lang /en messages.php /vi messages.php return [ 'welcome' => 'Welcome to Website!', 'hello' => 'Hello, :name', ];

Trong các folder ta tạo các file php và đặt tên sao cho phù hợp, như trên giả sử mình tạo file là message.php, trong cả 2 folder ban đều tạo các file giống nhau và nội dung trong các file mình tạo như sau. /resources/lang/en/message.php

  • 'Welcome to Website!',];
/resources/lang/vi/message.php return [ 'welcome' => 'Welcome to Website!', 'hello' => 'Hello, :name', 'apple' => 'There is one apple|There are many apples', ];

'Chào mừng bạn đến với Website!',];

Để sử dụng ta có hàm trans[], và trong file view blade bạn sẽ gọi {{ trans['.'] }}, cụ thể là {{ trans['message.welcome'] }}, khi đó sẽ hiển thị ra người dùng là Welcome to Website! hoặc Chào mừng bạn đến với Website!' tùy theo cấu hình hiện tại. Để thay đổi cấu hình ngôn ngữ hiển thị mình sẽ hướng dẫn ở phần duới của bài viết này. return [ 'welcome' => 'Welcome to Website!', 'hello' => 'Hello, :name', 'apple' => 'There is one apple|There are many apples', 'apples' => '{0} There are none|[1,19] There are some|[20,Inf] There are many', ];

1.2 Sử dụng file json

2. Website thay đổi ngôn ngữ theo người dùng

/resources /lang en.json vi.json

Lưu ý một chút là cách dùng file php thì ta cần để trong folder, còn với cách này thì ta sẽ để file .json ngay tại folder /resources/lang như trên. /resources/lang/en.json

{'Welcome to Website!'=>'Welcome to Website!','Welcome to Website, :name'=>'Welcome to Website, :name'} 'Welcome to Website!' => 'Welcome to Website!', 'Welcome to Website, :name' => 'Welcome to Website, :name' }

Cuối file ko có dấu , để đúng với cú pháp của file json. Cách dùng thì ta sử dụng hàm __[], đây là 2 dấu gạch dưới, mình đã từng làm với Magento và cũng có cú pháp tương tự khi i18n. Ví dụ:

{{ __['Welcome to Website!'] }} {{ __['Welcome to Website, :name', ['name' => 'My Name']] }}

Mình cố tình để tham số vào phần keyword để khi đọc thì ta có thể biết ngay cần bổ sung gì, hoặc nếu không thích thì bạn có thể bỏ tham số bên keyword đi.

2. Website thay đổi ngôn ngữ theo người dùng

Bên trên mình đã giới thiệu 2 cách để sử dụng i18n trong Laravel, và đây mình sẽ tiếp tục hướng dẫn một số cách để website thay đổi ngôn ngữ theo ý người dùng. Trước tiên thì ta nên cấu hình ngôn ngữ mặc định của website trong file config/app.php

'locale'=>'en',//ngôn ngữ mặc định'fallback_locale'=>'en',// được sử dụng khi không tìm thấy config locale. => 'en', //ngôn ngữ mặc định 'fallback_locale' => 'en', // được sử dụng khi không tìm thấy config locale.

Ta cấu hình các thông số trên cho phù hợp và với cách 1 thì các bạn để tên folder, còn với cách 2 thì các ta để tên file json.

2.1 Sử dụng session và middleware

Session để lưu ngôn ngữ hiện tại khách đang chọn, middleware để tiền xử lý cho website của bạn thay đổi ngôn ngữ theo lựa chọn của người dùng. Tạo 1 route xử lý thay đổi ngôn ngữ.

Route::get['change-language/{language}','[email protected]']->name['user.change-language'];::get['change-language/{language}', '[email protected]']->name['user.change-language'];

Đặt 2 link sau vào vị trí phù hợp trên website

EnglishVietnama href="{!! route['user.change-language', ['en']] !!}">English Vietnam

Trong HomeControler tại method changeLanguage :

publicfunctionchangeLanguage[$language]{\Session::put['website_language',$language];returnredirect[]->back[];} function changeLanguage[$language] { \Session::put['website_language', $language]; return redirect[]->back[]; }

Tiếp theo ta sẽ tạo middware để xử lý cho ứng dụng theo ngôn ngữ người dùng lựa chọn được lưu trong Session. Chạy lệnh sau trong ứng dụng Laravel php artisan make:middleware Locale. Một file đã được sinh ra tại app/Http/Middleware/Locale.php, vào file này và chỉnh sửa như sau tại method handle

publicfunctionhandle[$request,Closure$next]{$language=\Session::get['website_language',config['app.locale']];// Lấy dữ liệu lưu trong Session, không có thì trả về default lấy trong configconfig[['app.locale'=>$language]];// Chuyển ứng dụng sang ngôn ngữ được chọnreturn$next[$request];} function handle[$request, Closure $next] { $language = \Session::get['website_language', config['app.locale']]; // Lấy dữ liệu lưu trong Session, không có thì trả về default lấy trong config config[['app.locale' => $language]]; // Chuyển ứng dụng sang ngôn ngữ được chọn return $next[$request]; }

Và để sử dụng middleware thì ta cần khai báo trong app/Http/Kernel.php

protected$routeMiddleware=['auth'=>\Illuminate\Auth\Middleware\Authenticate::class,'auth.basic'=>\Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,'bindings'=>\Illuminate\Routing\Middleware\SubstituteBindings::class,'can'=>\Illuminate\Auth\Middleware\Authorize::class,'guest'=>\App\Http\Middleware\RedirectIfAuthenticated::class,'throttle'=>\Illuminate\Routing\Middleware\ThrottleRequests::class,'locale'=>\App\Http\Middleware\Locale::class,//Thêm vào dòng này]; $routeMiddleware = [ 'auth' => \Illuminate\Auth\Middleware\Authenticate::class, 'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class, 'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class, 'can' => \Illuminate\Auth\Middleware\Authorize::class, 'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class, 'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class, 'locale' => \App\Http\Middleware\Locale::class, //Thêm vào dòng này ];

Và bước cuối cùng để toàn bộ route được xử lý qua middleware này, và mình làm như sau tại routes/web.php

Route::group[['middleware'=>'locale'],function[]{Route::get['change-language/{language}','[email protected]']->name['user.change-language'];}];::group[['middleware' => 'locale'], function[] { Route::get['change-language/{language}', '[email protected]'] ->name['user.change-language']; }];

Thế là xong rồi đó, bạn nên tùy chỉnh một số chỗ cho phù hợp với ứng dụng của bạn.

2.2 Sử dụng subdomain

Với cách này thì ta cần tạo subdomain cho từng ngôn ngữ sử dụng, giả sử mình có vi.i18n.dev và en.i18n.dev, ta sẽ tạo route như sau

Route::group[['domain'=>'{language}.i18n.dev'],function[$language]{config[['app.locale'=>$language]];//đặt dòng này ở đầu//Toàn bộ các route khác đặt ở đây.}];::group[['domain' => '{language}.i18n.dev'], function [$language] { config[['app.locale' => $language]]; //đặt dòng này ở đầu //Toàn bộ các route khác đặt ở đây. }];

Và chỉ đơn giản cho người dùng truy cập vào trang ứng với ngôn ngữ họ muốn sử dụng.

2.3 Sử dụng trên url

Kiểu này cũng khá giống kiểu subdomain, bạn sẽ thêm ngôn ngữ vào trước toàn bộ các url trong ứng dụng.

Route::group[['prefix'=>'{language}'],function[$language]{config[['app.locale'=>$language]];//đặt dòng này ở đầu//Toàn bộ các route khác đặt ở đây.}];::group[['prefix' => '{language}'], function [$language] { config[['app.locale' => $language]]; //đặt dòng này ở đầu //Toàn bộ các route khác đặt ở đây. }];

Với cách này ta phải truyền thêm ngôn ngữ vào toàn bộ các url.

Kết

Thế là hết rồi, hy vọng bạn có thể áp dụng được bài viết này vào ứng dụng của bạn.

Bài Viết Liên Quan

Chủ Đề