text:
Trong bài báo này, tôi sẽ giới thiệu với các bạn về không gian kiểu (namespace) System.Reflection cũng như cách dùng nó để khảo sát động (reflection) assembly. Đây là một tính năng vừa hay vừa mạnh mà .NET cung cấp cho lập trình viên! Nó giúp ta có thể nắm bắt thông tin về assembly, lớp, đối tượng, hàm, sự kiện... cũng như điều chỉnh thông tin về đối tượng ngay trong khi chạy chương trình. ĐÔI NÉT VỀ ASSEMBLYTheo định nghĩa của MSDN, assembly là một khối xây dựng nên một trình ứng dụng chạy trên nền CLR; khối này có thể sử dụng lại, có thể có nhiều phiên bản và có chứa siêu thông tin (meta) tự mô tả. Mỗi khi bạn biên dịch một dự án (project) thành một tập .dll hay .exe, bạn tạo ra một assembly.
Hình 1: Sơ đồ các khối mã thành phần của assembly
Một assembly có thể chứa một hay nhiều môđun. Mỗi môđun có thể được biên dịch thành một tập tin riêng lẻ (tạo ra assembly loại đa tệp (multi-file assembly)) hay nhiều môđun được biên dịch thành cùng một tập tin (tạo ra assembly loại đơn tệp (single-file assembly)). Mỗi môđun có thể chứa một hay nhiều kiểu (type). Mỗi kiểu lại có thể chứa một hay nhiều thành viên (member) thuộc một trong các loại sau: hàm tạo (constructor), hàm chức năng (method), hàm thuộc tính (property), trường (field), sự kiện (event). Cũng như kiểu, mỗi thành viên lại có các thuộc tính (attribute) như public, private, static... Riêng hàm tạo, hàm chức năng, hàm thuộc tính, hàm sự kiện còn có thể có các tham biến (parameter), kiểu dữ liệu trả về và biến cục bộ (hình 1).Khi thi hành, assembly sẽ được tải vào miền ứng dụng (application domain). Miền ứng dụng là đơn vị quản lý của CLR (Common Language Runtime). Trong một miền ứng dụng có thể có một hay nhiều assembly cùng hoạt động. Miền ứng dụng khác với tiến trình (process) và tiểu trình (thread), vốn là hai loại đơn vị quản lý của hệ điều hành. Nhiều miền ứng dụng có thể chạy trong cùng một tiến trình, nhiều tiểu trình có thể cùng chạy trong một miền ứng dụng. Tại mỗi thời điểm, một tiểu trình phải chạy trong một miền ứng dụng, nhưng ở các thời điểm khác nhau, một tiểu trình vẫn có thể chạy ở các miền ứng dụng khác nhau.Mỗi assembly có thể thuộc loại dùng riêng (private) hay dùng chung (shared). Loại dùng riêng được lưu trong thư mục chứa trình ứng dụng hay thư mục con của thư mục đó. Loại dùng chung được lưu trong vùng đệm GAC, một vùng hệ thống được tự động cài đặt khi bạn cài CLR lên máy; thông thường đó là thư mục c:\Windows\Assembly hay c:\Winnt\Assembly.Assembly có thể có một tên duy nhất (strong name) hay một tên khả trùng (weak name). Một tên khả trùng chứa thông tin để nhận dạng assembly như tên, số phiên bản, thông tin văn hóa. Một tên duy nhất còn có thêm một khóa công khai và chữ kí số hóa. Một assembly dùng chung phải có một tên duy nhất. Mặc định Visual Studio .NET tạo ra assembly có tên khả trùng. Nếu bạn muốn tạo assembly có tên duy nhất, bạn có thể sử dụng tiện ích Strong Name (sn.exe) và Assembly Linker (Al.exe) của .NET Framework SDK hoặc là cung cấp thông tin về tên duy nhất cho trình biên dịch bằng cách sử dụng các thuộc tính như AssemblyKeyNameAttribute và AssemblyKeyFileAttribute.
GIỚI THIỆU VỀ KHÔNG GIAN KIỂU SYSTEM. REFLECTIONCơ chế khảo sát động là một nét đáng chú ý của .NET. Thông qua cơ chế này, chương trình có thể thu thập và xử lí thông tin mô tả (metadata) của chính mình. Chẳng những chương trình có thể khảo sát thông tin về các assembly, kiểu, thành viên của kiểu, các đối tượng đang tồn tại trong bộ nhớ mà chương trình còn có thể gọi các hàm chức năng, lấy hay đặt giá trị thuộc tính,... của những đối tượng đó. Sử dụng Reflection, ta có thể tạo ra các trình duyệt kiểu hay các trình soạn thảo thuộc tính.Các API giúp thực hiện cơ chế khảo sát kiểu đều nằm trong không gian kiểu System.Reflection. Bảng sau giới thiệu một số lớp trong không gian này:
Lớp
Công dụng
Assembly
Định nghĩa một assembly.
AssemblyFlagsAttribute
Chỉ định assembly có hỗ trợ việc nhiều phiên bản cùng chạy trên cùng máy, trong cùng tiến trình hay trong cùng miền ứng dụng không. Không thể kế thừa lớp này.
AssemblyName
Mô tả thông tin nhận dạng một assembly.
ConstructorInfo
Giúp nắm bắt thông tin về thuộc tính của hàm tạo cũng như thông tin mô tả hàm tạo.
EventInfo
Giúp nắm bắt thông tin về thuộc tính của sự kiện cũng như thông tin mô tả sự kiện.
FieldInfo
Giúp nắm bắt thông tin về thuộc tính của trường cũng như thông tin mô tả trường.
MemberInfo
Giúp nắm bắt thông tin về thuộc tính của thành viên cũng như thông tin mô tả thành viên.
MethodBase
Cung cấp thông tin về các hàm chức năng và hàm tạo. Đây là lớp cha của các lớp MethodInfo và ConstructorInfo.
MethodInfo
Giúp nắm bắt thông tin về thuộc tính của hàm chức năng cũng như thông tin mô tả hàm chức năng.
Module
Giúp khảo sát kiểu đối với môđun.
ParameterInfo
Giúp nắm bắt thông tin về thuộc tính của tham biến cũng như thông tin mô tả tham biến.
PropertyInfo
Giúp nắm bắt thông tin về thuộc tính của hàm thuộc tính cũng như thông tin mô tả hàm thuộc tính.
ReflectionTypeLoadException
Hàm chức năng Module.GetTypes() sẽ phát ra lỗi này khi không tải được lớp nào đó trong mô-đun chỉ định. Không thể thừa kế lớp này.
TargetException
Lỗi này được phát ra khi chương trình cố triệu gọi một hàm không hợp lệ.
TargetInvocationException
Lỗi này do hàm chức năng bị triệu gọi thông qua cơ chế Reflection phát ra. Không thể thừa kế lớp này.
TargetParameterCountException
Lỗi này được phát ra khi số tham số truyền cho một hàm bị gọi động không đúng với số tham biến đã khai báo của nó. Không thể thừa kế lớp này.
Sau đây chúng ta sẽ lần lượt tìm hiểu làm thế nào dùng System.Reflection để khảo sát assembly và kiểu chứa trong assembly cũng như gọi động các thành viên của một đối tượng.1. Khảo sát assembly và kiểuĐầu tiên, chúng ta cần tạo ra một đối tượng kiểu Assembly đại diện cho assembly mà ta muốn khảo sát. Có thể dùng một trong các cách sau:Nếu bạn muốn khảo sát các assembly dùng trong chương trình, sử dụng câu lệnh:Assembly[] assArr = System.AppDomain.CurrentDomain.GetAssemblies()Ở đây, System.AppDomain.CurrentDomain chỉ miền ứng dụng đang thi hành câu lệnh này và GetAssemblies() sẽ trả về một mảng các assembly có trong miền đó.Nếu bạn muốn khảo sát một assembly khác thì gọi hàm LoadFrom() hay Load(). Khi dùng LoadFrom(), bạn cần chỉ ra đầy đủ đường dẫn tới assembly dùng riêng cần tải vào bộ nhớ. Khi dùng Load(), bạn cần chỉ ra tên của assembly dùng chung theo dạng "Tên, Version=..., Culture=..., PublicKeyToken=... ". Dòng lệnh sau sẽ tải assembly Myasm.exe nằm ở thư mục gốc đĩa C vào bộ nhớ:Assembly ass = Assembly.LoadFrom("C:\Myasm.exe")Còn các dòng lệnh sau sẽ tải assembly System.dll ở GAC:String s = "System, Version = 1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"Assembly ass = Assembly.Load(s);Sau khi tạo xong đối tượng assembly, ta có thể bắt đầu khảo sát. Để truy xuất các thông tin về assembly, ta sử dụng các thành viên của lớp Assembly. Đoạn mã sau sẽ lần lượt hiển thị tên và vị trí trên máy của các assembly trong mảng assArr:foreach (Assembly a in assArr)Console.WriteLine(a.FullName + " nằm ở " + a.Location);Để khảo sát kiểu chứa trong assembly, ta có thể trực tiếp gọi:Type typ = ass.GetType("Tên kiểu cần khảo sát");hay Type[] typArr = ass.GetTypes();Hoặc tạo ra một đối tượng Module trước:Module mod = ass.GetModule("Tên mô-đun cần khảo sát");hayModule[] modArr = ass.GetModules();rồi gọi GetType() hay GetTypes() của đối tượng môđun để truy xuất một kiểu nào đó hay tất cả các kiểu trong môđun:Type typ = mod.GetType("Tên kiểu cần khảo sát");hayType[] typArr = mod.GetTypes();Type ở đây có thể là kiểu lớp (class), kiểu giao diện (inteface), hay kiểu liệt kê (enumeration). Muốn biết đối tượng Type của bạn thuộc kiểu nào, hãy gọi hàm thuộc tính IsClass, IsInterface, IsEnum để kiểm tra. Ví dụ:Console.WriteLine(typ.FullName + (typ.IsClass ? " là kiểu lớp" : " không phải kiểu lớp"));// Nếu typ là một lớp thì thông báo "là kiểu lớp". Nếu không thì báo " không phải kiểu lớp".Cuối cùng, để khảo sát các thành viên của một kiểu, ta có thể tạo ra biến hay mảng đối tượng kiểu MemberInfo, ConstructorInfo, MethodInfo, EventInfo, PropertyInfo, FieldInfo... bằng cách gọi các hàm chức năng của đối tượng Type như: GetMember hay GetMembers, GetConstructor hay GetConstructors, GetMethod hay GetMethods, GetEvent hay GetEvents... Ví dụ:PropertyInfo[] propArr = typ.GetProperties();foreach (PropertyInfo p in propArr){String s = "";s = "Thuộc tính " + p.Name;s += (p.CanRead ? " (có thể đọc)" : " ");s += (p.CanWrite ? " (có thể ghi)" : " ");s += "được khai báo trong kiểu " + p.DeclaringType;Console.WriteLine(s);}Nhằm minh họa những gì vừa nói về System.Reflection, tôi xin đưa ra một trình ứng dụng nhỏ MyReflector dùng để liệt kê danh sách môđun, kiểu và thành viên trong một assembly nào đó. Giao diện của MyReflector như ở hình 2, gồm các thành phần sau:
Vùng
Kiểu
txtOpenedAssembly
TextBox
Hiển thị tên và thông tin nhận dạng của assembly cần khảo sát kiểu
btnOpenAssembly
Button
Dùng để mở assembly cần khảo sát kiểu (thông qua một đối tượng OpenFileDialog), sử dụng hàm Assembly.LoadFrom()
btnOpenAssembly2
Dùng để mở assembly cần khảo sát kiểu (bằng cách gõ thông tin nhận dạng assembly vào vùng txtOpenedAssembly), sử dụng hàm Assembly.Load()
lstModules
ListBox
Hiển thị danh sách môđun trong assembly được mở
lstTypes
Hiển thị danh sách kiểu trong môđun được chọn trong vùng lstModules
lstMembers
Hiển thị danh sách thành viên trong kiểu được chọn trong vùng lstTypes
Cách thức hoạt động của MyReflector như sau: Đầu tiên, bạn chọn 1 trong 2 nút Mở assembly để mở ra assembly cần khảo sát. Nếu bạn chọn (LoadFrom), hộp thoại Open sẽ hiện ra cho bạn chỉ định assembly cần mở. Nếu bạn chọn (Load), chương trình sẽ mở assembly dựa trên nội dung ở TextBox txtOpenedAssembly; nội dung này phải có dạng như đã đề cập ở trên (Tên, Version=..., Culture=..., PublicKeyToken=...). Tiếp theo, bạn chọn một môđun nào đấy trong danh sách môđun để xem các kiểu của nó, rồi chọn một kiểu tùy ý trong danh sách kiểu để xem các thành viên tương ứng. Quá đơn giản, phải không?
Hình 2- Giao diện của MyReflectorVà đoạn mã thực hiện cũng đơn giản không kém. Để mở assembly chỉ định từ hộp thoại Open, ta dùng lệnh:private Assembly openedAssembly = null;...openedAssembly = Assembly.LoadFrom(openFileDialog.FileName);Còn để mở assembly dựa vào tên đầy đủ của nó (ghi trong TextBox txtOpenedAssembly), gọi:openedAssembly = Assembly.Load(txtOpenedAssembly.Text);Kế đến, ta dùng đoạn mã sau để đếm và liệt kê tên các môđun có trong assembly được mở:private Module[] moduleList = null;...moduleList = openedAssembly.GetModules();lstModules.Items.Clear();lblModules.Text = "Danh sách mô-đun: " + moduleList.Length.ToString();foreach (Module m in moduleList){lstModules.Items.Add(m.ToString());}Chúng ta cũng dùng đoạn mã tương tự để đếm và liệt kê tên các kiểu có trong 1 môđun được chọn nào đó:private Module selectedModule = null;private Type[] typeList = null;...selectedModule = moduleList[0];typeList = selectedModule.GetTypes();lstTypes.Items.Clear();lblTypes.Text = "Danh sách kiểu: " + typeList.Length.ToString();foreach (Type t in typeList){lstTypes.Items.Add(t.ToString());} Phần mã vừa trình bày có hơi khác với mã nguồn chương trình mẫu (Reflector.zip) tải về từ website www.pcworld.com.vn. 2. Gọi động một thành viênThông thường, khi chúng ta muốn truy cập một thành viên nào đó, chẳng hạn hàm ToString(), của một đối tượng obj, chúng ta phải ghi đúng tên của thành viên đó trước lúc biên dịch theo dạng obj.ToString(). Với System.Reflection và System.Type, chúng ta có thể gọi hàm ToString() của đối tượng obj trong khi chạy chương trình theo dạng sau:t.InvokeMember("ToString", ..., ..., obj, ...); // t là một đối tượng kiểu System.Typethậm chí bạn có thể thay "ToString" bằng "tostring", "TOSTRING", "tOstring",....NET cung cấp khả năng gọi động thành viên thông qua các biến thể của hàm InvokeMember() của lớp Type. Ở đây, chúng ta chỉ tìm hiểu biến thể sau:public object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object tartget, object[] args);trong đó:- name (kiểu string) là tên của thành viên cần gọi động. Nếu name bằng chuỗi rỗng ("") hay null thì thành viên mặc định sẽ được gọi.- invokeAttr (kiểu liệt kê System.Reflection.BindingFlags) là một mặt nạ bit tạo ra từ các cờ thông tin chỉ định cách thức tìm kiếm và sử dụng thành viên cần gọi. invokeAttr bằng null tương đương với BindingFlags.Public | BindingFlags.Instance. Dưới đây là một số cờ BindingFlags thông dụng:• Nếu muốn lấy giá trị trả về của thành viên, dùng cờ BindingFlags.Instance hay BindingFlags.Static. Ngoài ra, nếu thành viên thuộc loại static, dùng cờ BindingFlags.Static; ngược lại, dùng cờ BindingFlags.Instance.• Nếu thành viên cần gọi thuộc loại public, dùng cờ BindingFlags.Public. Ngược lại, dùng cờ BindingFlags.NonPublic. Nếu bạn không cần quan tâm thành viên đó có thuộc loại public hay không thì dùng cả hai cờ (sử dụng toán tử OR (|)).• Nếu thành viên cần gọi thuộc loại static và có thể được thừa kế từ các lớp khác, dùng cờ BindingFlags.FlattenHierarchy.• Nếu không muốn quan tâm đến cách viết hoa hay thường của tên thành viên, dùng cờ BindingFlags.IgnoreCase.• Nếu chỉ muốn dùng các thành viên được khai báo trong kiểu, bỏ qua các thành viên kế thừa, dùng cờ BindingFlags.DeclaredOnly.• Nếu muốn gọi hàm tạo thì đặt tham số name bằng null hay chuỗi rỗng và dùng cờ BindingFlags.CreateInstance.• Nếu muốn gọi các hàm chức năng khác thì dùng cờ InvokeMethod.• Nếu muốn lấy giá trị của trường hay hàm thuộc tính thì dùng cờ GetField hay GetProperty.• Nếu muốn đặt giá trị cho trường hay hàm thuộc tính thì dùng cờ SetField hay SetProperty.(Không dùng cùng lúc 2 cờ trở lên trong các cờ CreateInstance, InvokeMethod, GetField, SetField, GetProperty, SetProperty)- binder (kiểu Binder) chỉ định cách chọn thành viên để gọi từ danh sách thành viên tìm được. binder cũng chỉ định cách chuyển kiểu và gọi động thành viên. Thông thường, chúng ta đặt binder bằng null để sử dụng đối tượng DefaultBinder của hệ thống. Nếu bạn không thích null, bạn phải tạo ra một lớp con của binder rồi truyền một đối tượng của lớp này làm binder.- target (kiểu Object) là đối tượng có thành viên cần gọi.- args (kiểu Object[]) là mảng chứa các tham số cần truyền cho thành viên cần gọi.- Hàm InvokeMember() trả về một đối tượng kiểu Object chứa giá trị trả về của thành viên được gọi. Nếu cần sử dụng giá trị này, bạn nhớ chuyển kiểu thích hợp cho nó.Chú ý, việc gọi hàm InvokeMember() có thể gây ra một số lỗi như:
Loại lỗi
Điều kiện gây ra lỗi
ArgumentException
invokeAttr chứa cờ CreateInstance kết hợp với InvokeMethod, GetField, SetField, GetProperty, SetPropertyhay invokeAttr chứa cờ GetField và SetFieldhay invokeAttr chứa cờ GetProperty và SetPropertyhay invokeAttr chứa cờ InvokeMethod và SetField hay SetPropertyhay args là mảng nhiều chiềuhay invokeAttr chứa cờ SetField và args có hơn một phần tử(hay một số điều kiện khác)
MissingFieldException
Không tìm thấy trường hay thuộc tính
Không thể gọi thành viên chỉ định đối với target
AmbiguousMatchException
Có nhiều hơn một hàm chức năng thỏa điều kiện gọi
Ngoài ra, để gọi được một hàm chức năng thì số tham biến (parameter) trong phần khai báo hàm phải bằng với số tham số (argument) truyền trong mảng args (trừ trường hợp hàm có định nghĩa tham số mặc định) và kiểu của các tham số phải có thể chuyển được thành kiểu của tham biến.Và đây là ví dụ minh họa cách dùng InvokeMember().Giả sử ta có lớp sau :class MyClass{private int Field1 = 0;public MyClass(){Console.WriteLine("MyClass");}public int Prop1{set {Field1 = value;}get { return Field1;}}public String ToString(){return Field1.ToString();}}Bây giờ ta muốn sử dụng lớp này. Thay vì dùng các câu lệnh bình thường như dưới đây:MyClass obj = new MyClass();Console.WriteLine("Kiểu của obj: " + obj.GetType().ToString()) ;obj.Prop1 = 10;Console.WriteLine("Prop1 = " + obj.Prop1);Console.WriteLine("ToString = " + obj.ToString());Ta có thể dùng: // Tạo một đối tượng kiểu Type đại diện cho kiểu MyClassType t = typeof(MyClass) ;// Tạo mảng tham số cần truyền cho hàm tạo MyClass().Object[] args = new Object[]{} ;// Dùng InvokeMember() để gọi hàm tạo. Ở đây, vì số tham biến của hàm tạo là 0 nên có thể thay args bằng null. Ngoài ra, tham biến target cũng nên đặt bằng null.Object obj = t.InvokeMember(null, BindingFlags.DeclaredOnly | BindingFlags.Public | BindingFlags.Instance | BindingFlags.CreateInstance, null, null, args);Console.WriteLine("Kiểu của obj: " + obj.GetType().ToString()) ;// Đặt thuộc tính Prop1 bằng 10t.InvokeMember("Prop1", BindingFlags.DeclaredOnly | BindingFlags.Public | BindingFlags.Instance | BindingFlags.SetProperty, null, obj, new Object[]{10});// Lấy giá trị của thuộc tính Prop1 gán cho biến vint v = (int) t.InvokeMember("Prop1", BindingFlags.DeclaredOnly | BindingFlags.Public | BindingFlags.Instance | BindingFlags.GetProperty, null, obj, null);Console.WriteLine("Prop1 = " + v);// Gọi hàm ToString (mà không cần chú ý viết hoa hay viết thường ) và gán giá trị trả về cho biến sString s = (String) t.InvokeMember("tostring", BindingFlags.DeclaredOnly | BindingFlags.Public | BindingFlags.Nonpublic | BindingFlags.Instance | BindingFlags.InvokeMethod | BindingFlags.IgnoreCase, null, obj, null);Console.WriteLine("ToString = " + s);Ngoài ra, ta còn có thể:// Đặt giá trị 5 cho trường Field1. Hãy chú ý là trường này thuộc loại private, tức là bình thường ta không thể gọi obj.Field1 = 5;t.InvokeMember("Field1", BindingFlags.DeclaredOnly | BindingFlags.Nonpublic | BindingFlags.Instance | BindingFlags.SetField, null, obj, new Object[]{5});// Lấy giá trị của trường Field1 gán vào biến vv = (int) t.InvokeMember("Field1", BindingFlags.DeclaredOnly | BindingFlags.Public | BindingFlags.Nonpublic | BindingFlags.Instance | BindingFlags.GetField, null, obj, null);Console.WriteLine("Field1 = " + v);Như bạn đã thấy, tuy cách gọi động thành viên phải tốn khá nhiều dòng mã so với cách gọi bình thường nhưng nó có lợi thế là rất linh hoạt: chẳng những có thể gọi thành viên bằng tên (thông qua một biến chuỗi), không phân biệt hoa hay thường, mà còn có thể gọi cả các thành viên private. Không những thế, cách thức gọi động tuy khác nhau đối với các loại thành viên khác nhau nhưng có cấu trúc hoàn toàn xác định, có thể lập ra mẫu gọi tổng quát, áp dụng được cho bất kì kiểu nào, thành viên nào. Do vậy, việc vận dụng tính năng gọi động sẽ giúp chương trình của bạn cho phép người dùng thoải mái chọn hàm muốn thi hành, nạp tham số cần thiết... hay giúp bạn kiểm soát chính chương trình của mình.3. Ví dụ minh họaỞ phần 1, chúng ta đã tạo một trình duyệt kiểu đơn giản; ở phần 2, chúng ta cũng đã thử gọi động thành viên. Nhưng những ví dụ đó có thể vẫn chưa thuyết phục lắm. Cho nên, tôi sẽ minh họa thêm bằng một trình ứng dụng nữa: PropertyEditor. Đây là chương trình mô phỏng tính năng của cửa sổ Properties quen thuộc trong Visual Studio hay các IDE khác. Mời các bạn xem giao diện của nó trên hình 3.Cách hoạt động của chương trình chắc các bạn cũng đã đoán ra: khi nhấn vào nút Form trên ToolboxForm thì một DesignForm mới sẽ xuất hiện, khi nhấn vào những nút còn lại thì điều khiển (control) tương ứng sẽ được tạo ra trên DesignForm đang được chọn. Cuối cùng, khi nhấn vào một điều khiển trên DesignForm hay chính DesignForm thì thông tin về các thuộc tính tương ứng sẽ hiện ra trên PropertySheetForm (ở đây, tôi chỉ cho hiện các thuộc tính public kiểu string và int). Nếu muốn, bạn có thể sửa giá trị những thuộc tính của đối tượng trực quan đang được chọn thông qua PropertySheetForm này bằng cách nhấn 2 lần lên giá trị cần sửa và gõ vào giá trị mới.
Hình 3- Giao diện của PropertyEditorDựa vào phần mô tả trên, có thể thấy PropertyEditor cần thực hiện được 3 tính năng chính là tạo một điều khiển theo tên chỉ định, xem thuộc tính của đối tượng chỉ định và chỉnh sửa giá trị thuộc tính của đối tượng chỉ định. Bây giờ, chúng ta bắt đầu tìm hiểu phần mã thực thi các tính năng đó. Ở đây chỉ tập trung vào những đoạn mã liên quan đến System.Reflection. Phần còn lại mời các bạn xem thêm trong mã nguồn.Như bạn thấy trên hình, chương trình của chúng ta gồm 4 nhóm form chính là ManagerForm, ToolboxForm, PropertySheetForm và DesignForm, trong đó ManagerForm là form chủ chứa tất cả các form còn lại. Ngoài việc lưu tham chiếu đến các đối tượng ToolboxForm, PropertySheetForm và DesignForm, ManagerForm còn phải kiểm soát thông tin về DesignForm cũng như điều khiển hiện hành. Sau đây là một số biến quan trọng của ManagerForm:// Các biến sau lần lượt trỏ đến form thiết kế hiện hành, mảng các form thiết kế đã tạo, điều khiển đang được chọn.internal Form curForm = null;internal ArrayList frmList = new ArrayList();internal Control curControl = null;// Các biến sau lần lượt trỏ đến form hộp công cụ, form bảng thuộc tính của chương trình.internal ToolboxForm toolbox = null;internal PropertySheetForm propertySheet = null;// Biến này trỏ đến assembly System.Windows.Forms.dll. Cần phải tải assembly này vào bộ nhớ mới có thể tạo động các điều khiển.internal Assembly myAsm = null;Trong 6 biến vừa nêu, chỉ có myAsm cần được giải thích thêm. Sở dĩ ta dùng biến này là vì: Các điều khiển mà chương trình của chúng ta cần tạo ra đều thuộc không gian kiểu System.Windows.Forms; không gian này lại nằm trong assembly System.Windows.Forms.dll. Do đó, chúng ta phải tải assembly này vào bộ nhớ trước và lưu tham chiếu đến nó để về sau sử dụng:myAsm = Assembly.Load("System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089");Kể từ bây giờ, dựa vào myAsm, chúng ta có thể tạo động bất kì điều khiển nào có trong System.Windows.Forms, chứ không chỉ có Button và Label. Xem hàm createNewControl() của ManagerForm bạn sẽ rõ:public void createNewControl(string ControlType){...// Từ ControlType (dạng viết gọn) tạo ra dạng đầy đủ của tên kiểu. Riêng trường hợp ControlType = "Form" thì tạo trực tiếp phông thiết kế.string s;switch (ControlType){case "Form":curForm = new DesignForm(this);...return;default:if (curForm == null || curForm.IsDisposed) return;s = "System.Windows.Forms." + ControlType;break;}// Tạo ra đối tượng obj có kiểu chỉ định.Type t = myAsm.GetType(s);Object[] args = new Object[]{}; Object obj = t.InvokeMember(null, BindingFlags.DeclaredOnly | BindingFlags.Public | BindingFlags.Instance | BindingFlags.CreateInstance, null, null, args);...}Như vậy, để tạo một ComboBox hay ListBox, TreeView..., bạn chỉ đơn giản gọi:createNewControl("ComboBox");createNewControl("ListBox");createNewControl("TreeView");Ngoài createNewControl(), ManagerForm còn định nghĩa updateControl() dùng để chỉnh sửa giá trị thuộc tính của một điều khiển nào đó.public void updateControl(Control whichControl, string whichProperty, object whichValue){ Type t = whichControl.GetType();PropertyInfo pi = t.GetProperty(whichProperty);switch (pi.PropertyType.ToString()){case "System.String":pi.SetValue(whichControl, Convert.ToString(whichValue), null);// Câu lệnh sau tương đương với câu lệnh liền trên:// t.InvokeMember(whichProperty, BindingFlags.SetProperty | BindingFlags.Instance | BindingFlags.Public, null, whichControl, new object[]{whichValue}); break;case "System.Int32":pi.SetValue(whichControl, Convert.ToInt32(whichValue),null);// Các câu lệnh sau tương đương với câu lệnh liền trên// int i = Convert.ToInt32(whichValue);// t.InvokeMember(whichProperty, BindingFlags.SetProperty | BindingFlags.Instance | BindingFlags.Public, null, whichControl, new object[]{i}); break;}}Hiện tại, đoạn mã trên chỉ áp dụng cho những thuộc tính mang giá trị kiểu string và int. Bạn có thể tự mở rộng để áp dụng cho những thuộc tính mang giá trị kiểu khác.Thế là tạm xong phần của ManagerForm. Bây giờ tới PropertySheetForm, form này đơn giản hơn ManagerForm nhiều. Phần cốt lõi của nó là 3 hàm chức năng sau:// Hàm này nhận vào một đối tượng và trả về một mảng 2 chiều mô tả một bảng dữ liệu có 3 cột: tên thuộc tính, giá trị thuộc tính và kiểu của thuộc tính.public string[][] getProperties(object whichObject) {...}// Hàm này nhận vào một mảng chuỗi hai chiều (các phần tử 0 của những mảng con 1 chiều tạo ra nội dung mảng Items của ListView, các phần tử từ thứ 2 trở đi là nội dung mảng SubItems của phần tử tương ứng trong mảng Items) và trả về một đối tượng ListView.public ListView createListView(string[][] itemArr) {...}// Hàm này nhận vào một đối tượng và cập nhật giá trị các thuộc tính của đối tượng này lên bảng thuộc tính.public void updateSheet(object whichObject) {...}Mỗi khi curForm hay curControl thay đổi thì ManagerForm sẽ gọi updateSheet() để cập nhật bảng thuộc tính. Đến phiên mình, updateSheet() sẽ gọi getProperties() và createListView() để tạo lại danh sách thuộc tính thích hợp. Cuối cùng, cần nói qua về hàm addButton() của ToolboxForm. Hàm này không sử dụng đến tính năng của System.Reflection mà chỉ dùng để tạo thêm nút lệnh vào hộp công cụ. Bạn truyền cho hàm một chuỗi cho biết tên kiểu của điều khiển sẽ được tạo ra khi nhắp vào nút lệnh này. Hàm xử lí sự kiện của nút lệnh đó sẽ truyền chuỗi trên đến createNewControl() của ManagerForm.Trong hàm tạo của ToolboxForm, tôi chỉ dùng 3 lệnh sau:addButton("Form");addButton("Button");addButton("Label");Do đó, trên hộp công cụ trong hình 3 chỉ có 3 nút lệnh. Nếu thích bổ sung thêm các nút dùng để tạo CheckBox, ComboBox, DataGrid..., bạn chỉ cần thêm:addButton("CheckBox");addButton("ComboBox");addButton("DataGrid");Chương trình InvokeMemberDemo và PropertyEditor dùng để minh họa cho phần này có trong tệp Reflector.zip (tải về từ www.pcworld.com.vn). Bạn cần dùng lệnh Set As Startup Project khi lựa chọn chương trình muốn chạy.Hi vọng những gì trình bày trong bài báo này giúp các bạn cảm nhận được phần nào sức mạnh của cơ chế khảo sát động trong .NET. Chúc các bạn sẽ tìm thêm được nhiều điều thú vị với System.Reflection. Nguyên PhươngEmail: hungphung@hcm.fpt.vn


text:
Cơ Sở Thổi Cát 41 | Dịch Vụ Phun Cát Chuyên Nghiệp
Cơ sở Thổi Cát 41 chúng tôi chuyên thổi cát các linh kiện phụ tùng động cơ và thổi cát tạo nhám khuôn mẫu…, với công nghệ thổi cát tân tiến đạt chất lượng cao đã được chúng tôi áp dụng nhiều năm nay hầu đảm bảo những nhu cầu khắc khe của quý khách. Với tiêu chí đó chúng tôi đã và không ngừng tìm tòi nghiên cứu và phát triển them nhằm càng lúc càng nâng cao chất lượng sản phầm cũng như số lượng sàn phầm được thực hiện.
*Chuyên:
- Thổi cát tân trang làm sạch các cơ phận động cơ xe 2 & 4 bánh : NẮP CUILATE, LÓC LẠNH, DYNAMO,...
- Các linh kiện, phụ tùng bằng nhôm, thau, gang, sắt, inox...
*Đặc Biệt:
- Thổi nhám trên các bề mặt khuôn mẫu, khuôn ép nhựa.
Cơ sở chúng tôi đã và đang đồng hành cùng các bạn, cảm ơn sự phối hợp nhiều năm nay, của các nhà sản xuất khuôn, các bạn cơ khí, xe cơ giới.
Vì sự gắn bó dài lâu, chúng tôi liên tục cải tiến công nghệ, để luôn đem đến các bạn đồng hành những sản phẩm hoàn hảo nhất, trong một thời gian ngắn nhất.
Với nhiều lĩnh vực trong chuyên nghành:
- Thổi tạo nhám trên bề mặt khuôn mẫu, khuôn ép nhựa: Khuôn giày, khuôn ghế, khuôn dép, khuôn mỹ phẩm, khuôn đồ chơi lego...
- Thổi làm sạch lốc máy honda như: su sport ( su sì po), đầu cuilate, lóc máy honda, lóc máy yamaha, lóc máy Mitsumitshi, HyunDai, V8, V12, Hyno...
- Mài Sọc phụ tùng mô tô, lóc nồi mô tô, phuộc mô tô, nắp đuôi cá mô tô và nhiều chi tiết khác.
- Hóa màu các loại linh kiện sản phẩm antimoan (atimoan)
Với trang thiết bị hiện đại, tân tiến nhất trong lãnh vực tân trang làm sạch và thổi nhám khuôn mẫu. Cùng đội ngũ chuyên viên nhiều năm kinh nghiệm gắn bó với công nghệ.
Đến với chúng tôi các bạn luôn hài lòng về chất lượng sản phẩm, giá cả phải chăng, phục vụ chu đáo. Hãy Liên Hệ Ngay Khi Bạn Có Nhu Cầu 0937166400; 0933774745
Mọi chi tiết xin liên hệ:
- ĐC: 41 Dương Khuê- P. Hiệp Tân- Q. Tân Phú
- WEB: www.phuncat.net
Từ Khóa seo; Thoi cat, Thổi Cát, Phun Cát, Phun Cat, Bắn Cát, Ban Cat

markdown:
# Cơ Sở Thổi Cát 41 | Dịch Vụ Phun Cát Chuyên Nghiệp
**Cơ sở Thổi Cát 41 chúng tôi chuyên thổi cát các linh kiện phụ tùng động cơ và thổi cát tạo nhám khuôn mẫu…, với công nghệ thổi cát tân tiến đạt chất lượng cao đã được chúng tôi áp dụng nhiều năm nay hầu đảm bảo những nhu cầu khắc khe của quý khách. Với tiêu chí đó chúng tôi đã và không ngừng tìm tòi nghiên cứu và phát triển them nhằm càng lúc càng nâng cao chất lượng sản phầm cũng như số lượng sàn phầm được thực hiện.** **Chuyên:*
-
*Thổi cát tân trang làm sạch* các cơ phận động cơ xe 2 & 4 bánh : NẮP CUILATE, LÓC LẠNH, DYNAMO,...
-
**Các linh kiện, phụ tùng bằng nhôm, thau, gang, sắt, inox...** *** Đặc Biệt:**
-
**Thổi nhám trên các bề mặt khuôn mẫu, khuôn ép nhựa.** ** Cơ sở chúng tôi đã và đang đồng hành cùng các bạn, cảm ơn sự phối hợp nhiều năm nay, của các nhà sản xuất khuôn, các bạn cơ khí, xe cơ giới.** **Vì sự gắn bó dài lâu, chúng tôi liên tục cải tiến công nghệ, để luôn đem đến các bạn đồng hành những sản phẩm hoàn hảo nhất, trong một thời gian ngắn nhất.** **Với nhiều lĩnh vực trong chuyên nghành:**
-
[: Khuôn giày, khuôn ghế, khuôn dép, khuôn mỹ phẩm, khuôn đồ chơi lego... Thổi tạo nhám trên bề mặt khuôn mẫu, khuôn ép nhựa](http://www.phuncat.net/thoi-nham-khuon)
-
[honda như: su sport ( su sì po), đầu cuilate, lóc máy honda, lóc máy yamaha, lóc máy Mitsumitshi, HyunDai, V8, V12, Hyno...](http://www.phuncat.net/thoi-cat-loc-may) **Thổi làm sạch lốc máy**
-
[, lóc nồi mô tô, phuộc mô tô, nắp đuôi cá mô tô và nhiều chi tiết khác.](http://www.phuncat.net/mai-soc-phu-tung-mo-to) **Mài Sọc phụ tùng mô tô**
-
**Hóa màu các loại linh kiện**sản phẩm antimoan (atimoan) **Với trang thiết bị hiện đại, tân tiến nhất trong lãnh vực tân trang làm sạch và thổi nhám khuôn mẫu. Cùng đội ngũ chuyên viên nhiều năm kinh nghiệm gắn bó với công nghệ. ** **Đến với chúng tôi các bạn luôn hài lòng về chất lượng sản phẩm, giá cả phải chăng, phục vụ chu đáo. ** **Hãy Liên Hệ Ngay Khi Bạn Có Nhu Cầu ** **0937166400; 0933774745** **Mọi chi tiết xin liên hệ:** **ĐC: 41 Dương Khuê- P. Hiệp Tân- Q. Tân Phú** **WEB:** [www.phuncat.net](http://www.phuncat.net)
Từ Khóa seo; Thoi cat, Thổi Cát, Phun Cát, Phun Cat, Bắn Cát, Ban Cat

WARC-Type: response

Content-Type: application/http; msgtype=response

WARC-Truncated: length

WARC-Identified-Payload-Type: text/html

Server: Apache

Connection: close

Pragma: no-cache

Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0

Set-Cookie: currency=GBP; expires=Fri, 20-Oct-2017 19:57:15 GMT; Max-Age=2592000; path=/; domain=www.phuncat.net

Vary: User-Agent

Content-Type: text/html; charset=utf-8


text:
Thổi Cát Chuyên Nghiệp Khu Vực Tp.Hcm
HotLine: 0937.166.400 & 0933.774.745
Cơ Sở Thổi Cát 41
+
Thổi Cát Tân Trang
Sản Phẩm Thổi Cát
Thổi Cát Cụm Máy Xe Tay Ga
Thổi Cát Máy Su sport
Thổi Cát Động Cơ-Cơ Giới
+
Thổi Cát Khuôn Mẫu
Thổi Cát Tạo Độ Nhám Trên Khuôn Cao Cấp
Khuôn AVR 1
Khuôn Thổi Nhám
Thổi Nhám Khuôn Bình
Thổi Cát Khuôn Chai Thuốc
Thổi Cát Tạo Nhám Khuôn Bình
Thổi Nhám Khuôn Kính
Khuôn Kính Vuông
+
Thổi Cát & Mài Sọc
Mài Sọc Linh Kiện Xe Máy
Mài Sọc Chi Tiết Mô Tô
Mài Sọc Gát Chân Mô Tô
Mài Sọc Mâm Lửa Mô Tô 250
Mài Sọc Phụ Tùng Mô Tô
Mâm Lửa Mô Tô Mài Sọc
+
Anode Nhôm Màu
+
Hóa Màu Antimoan
+
Trang chủ
»
Mài Sọc Chi Tiết Mô Tô
Mài Sọc Chi Tiết Mô Tô
Mài Sọc Chi Tiết Mô Tô
Mới nhất
Mài Sọc Mô Tô 250cc
Mài Sọc Phụ Tùng Mô Tô
Máy Mô Tô Thổi Cát và Mài Sọc
Thổi Cát Xe Máy
Thổi Cát Làm Sạch Sơn
Thổi Cát Van Bơm
Phun Cát Cụm Lóc Su Sport và Đầu Lòng
Thổi Cát Tạo Nhám Khuôn Tủ Lạnh Sanyo
Thổi Cát Tạo Nhám Khuôn Móc Áo
Thổi Cát Tạo Nhám Khuôn Bình
Sản phẩm nổi bật
Thổi Cát Tạo Nhám Bề Mặt Khuôn
Máy Cơ Giới Thổi Cát Tân Trang
Thổi Cát Nguyên Cục Máy Cơ Giới
Mài Sọc Nắp Nồi Mô Tô 250cc
Bình Xăng Con Củ Làm Lại Như Mới

Set-Cookie: jrv=71; expires=Fri, 20-Oct-2017 19:52:22 GMT; Max-Age=2592000; path=/; domain=www.phuncat.net


text:
52 Thủ Thuật Tăng Tốc PHP Tien Le 06:58 thủ thuật PHP Edit 1. Biến - Khai báo khởi tạo biến định kiểu nhanh hơn 376% so với không định kiểu. - Hằng chậm hơn 146% so với biến. - Biến cục bộ nhanh hơn 9.9% biến toàn cục. 2. Hàm làm việc với chuỗi - 'string' nhan hơn 0.26% so với "string" - "String" nhanh hơn 4% so với cú pháp HEREDOC - "Stringn" nhanh hơn 108% so với 'String'."n" - 'String'.$var nhanh hơn 28% so với "String$var" - 'string '.$var.' string' nhanh hơn 55% so với sprintf('string %s string', $var) - "n" nhanh hơn 70% so với chr(10) - strnatcmp() nhanh hơn 4.95% so với strcmp() - strcasecmp() nhanh hơn 45% so với preg_match() - strcasecmp() nhanh hơn 6.6% so với strtoupper($string) == "STRING" - strcasecmp() nhanh hơn 13% so với strnatcasecmp() - strtr($string, $string1, $string2) nhanh hơn 10% so với str_replace() - str_replace() nhanh hơn 161% so với strtr($string, $array) - stristr() nhanh hơn 10% so với stripos() - strpos() nhanh hơn 9.7% so với strstr() - isset($str{5}) nhanh hơn 176% so với strlen($str) > 5 - str_replace($str, $str, $str) hai lần nhanh hơn 17% so với str_replace(array, array, string) - list() = explode() nhanh hơn 13% so với substr($str, strpos($str)) 3. Hàm làm việc với số - ++$int nhanh hơn 10% so với $int++ - (float) nhanh hơn 48% so với settype($var, 'float') 4. Hàm làm việc với mảng - list() = $array; nhanh hơn 3.4% so với gán từng giá trị - in_array() nhanh hơn 6% so với array_search - isset($array[$key]) nhanh hơn 230% so với array_key_exists() - !empty($array) nhanh hơn 66% so với count($array) 5. Hàm xuất - echo nhanh hơn 5% so với print() - echo ' '.' ' nhanh hơn 0.44% so với echo ' ',' ' 6. Hàm, phương thức và cách thức gọi - call_user_func() chậm hơn 54% so với gọi trực tiếp hàm - call_user_func() chậm hơn 59% so với gọi phương thức tĩnh (static method) - call_user_func() chậm hơn 65% so với gọi phương thức (của một đối tượng) - function() nhanh hơn 119% so với static::method() - $this->method() nhanh hơn 116% so với static::method() - declared static::method() nhanh hơn 93% so với static::method() 7. Hàm, phương thức - Truyền tham trị nhanh hơn 3% so với truyền tham chiếu - Không tham chiếu (no reference ) nhanh hơn 1.7% so với tham chiếu (Return by reference) 8. Làm việc với File - Scandir() nhanh hơn 4% so với opendir(), readdir(), closedir() - file_get_contents() nhanh hơn 52% so với fopen(), fread(), fclose() - file_get_contents() nhanh hơn 39% so với implode("n", file()) 9. Hàm ghi bộ đệm (Cache) - xcache_set() nhanh hơn 1,645% so với file_put_contents() - xcache_set() nhanh hơn 646% so với memcache->set() - xcache_get() nhanh hơn 1,312% so với memcache->get() 10. Hàm (Tổng quát) - if elseif else nhanh hơn 0.78 % so với switch - @Error supression (bỏ báo lỗi nếu có) chậm hơn 235% so với without - $_SERVER['REQUEST_TIME'] nhanh hơn 59% so với time() - min(array) nhanh hơn 16% so với min(int, int) - require_once() nhanh hơn 24% so với include() - require_once() nhanh bằng include_once() - include('đường dẫn tương đối') nhanh hơn 37% so với include('đường dẫn tuyệt đối') 11. Chuỗi chính quy (regular expressions) - str_replace() nhanh hơn 40% so với preg_replace() - ereg('regex') nhanh hơn 17% so với preg_match('/regex/') - preg_match('/regex/i') nhanh hơn 68% so với eregi('regex') 12. Top 10 các hàm có ích nhất - đắt giá nhất - file_put_contents() - opendir() readdir() closedir() - scandir() - fopen() fread() fclose() - memcache->get() - memcache->set() - implode('n', file()) - include() - include_once() - file_get_contents() 13. Top 10 các hàm tiết kiệm thời gian nhiều nhất ( biggest time savers (per call)) - xcache_set() vs. file_put_contents() - xcache_get() vs. memcache->get() - xcache_set() vs. memcache->set() - file_get_contents() vs. fopen(), fread(), fclose() - file_get_contents() vs. implode('n', file()) - include(relative) vs. include(full_path) - require_once() vs. include() - scandir() vs. opendir() readdir() closedir() - static method vs. call_user_func() - preg_match(/regex/i) vs. eregi(regex) Share on Facebook Share on Twitter Share on Google Plus RELATED POSTS
0 nhận xét :
Đăng nhận xét

markdown:
52 Thủ Thuật Tăng Tốc PHP Tien Le 06:58 thủ thuật PHP Edit 1. Biến - Khai báo khởi tạo biến định kiểu nhanh hơn 376% so với không định kiểu. - Hằng chậm hơn 146% so với biến. - Biến cục bộ nhanh hơn 9.9% biến toàn cục. 2. Hàm làm việc với chuỗi - 'string' nhan hơn 0.26% so với "string" - "String" nhanh hơn 4% so với cú pháp HEREDOC - "Stringn" nhanh hơn 108% so với 'String'."n" - 'String'.$var nhanh hơn 28% so với "String$var" - 'string '.$var.' string' nhanh hơn 55% so với sprintf('string %s string', $var) - "n" nhanh hơn 70% so với chr(10) - strnatcmp() nhanh hơn 4.95% so với strcmp() - strcasecmp() nhanh hơn 45% so với preg_match() - strcasecmp() nhanh hơn 6.6% so với strtoupper($string) == "STRING" - strcasecmp() nhanh hơn 13% so với strnatcasecmp() - strtr($string, $string1, $string2) nhanh hơn 10% so với str_replace() - str_replace() nhanh hơn 161% so với strtr($string, $array) - stristr() nhanh hơn 10% so với stripos() - strpos() nhanh hơn 9.7% so với strstr() - isset($str{5}) nhanh hơn 176% so với strlen($str) > 5 - str_replace($str, $str, $str) hai lần nhanh hơn 17% so với str_replace(array, array, string) - list() = explode() nhanh hơn 13% so với substr($str, strpos($str)) 3. Hàm làm việc với số - ++$int nhanh hơn 10% so với $int++ - (float) nhanh hơn 48% so với settype($var, 'float') 4. Hàm làm việc với mảng - list() = $array; nhanh hơn 3.4% so với gán từng giá trị - in_array() nhanh hơn 6% so với array_search - isset($array[$key]) nhanh hơn 230% so với array_key_exists() - !empty($array) nhanh hơn 66% so với count($array) 5. Hàm xuất - echo nhanh hơn 5% so với print() - echo ' '.' ' nhanh hơn 0.44% so với echo ' ',' ' 6. Hàm, phương thức và cách thức gọi - call_user_func() chậm hơn 54% so với gọi trực tiếp hàm - call_user_func() chậm hơn 59% so với gọi phương thức tĩnh (static method) - call_user_func() chậm hơn 65% so với gọi phương thức (của một đối tượng) - function() nhanh hơn 119% so với static::method() - $this->method() nhanh hơn 116% so với static::method() - declared static::method() nhanh hơn 93% so với static::method() 7. Hàm, phương thức - Truyền tham trị nhanh hơn 3% so với truyền tham chiếu - Không tham chiếu (no reference ) nhanh hơn 1.7% so với tham chiếu (Return by reference) 8. Làm việc với File - Scandir() nhanh hơn 4% so với opendir(), readdir(), closedir() - file_get_contents() nhanh hơn 52% so với fopen(), fread(), fclose() - file_get_contents() nhanh hơn 39% so với implode("n", file()) 9. Hàm ghi bộ đệm (Cache) - xcache_set() nhanh hơn 1,645% so với file_put_contents() - xcache_set() nhanh hơn 646% so với memcache->set() - xcache_get() nhanh hơn 1,312% so với memcache->get() 10. Hàm (Tổng quát) - if elseif else nhanh hơn 0.78 % so với switch - @Error supression (bỏ báo lỗi nếu có) chậm hơn 235% so với without - $_SERVER['REQUEST_TIME'] nhanh hơn 59% so với time() - min(array) nhanh hơn 16% so với min(int, int) - require_once() nhanh hơn 24% so với include() - require_once() nhanh bằng include_once() - include('đường dẫn tương đối') nhanh hơn 37% so với include('đường dẫn tuyệt đối') 11. Chuỗi chính quy (regular expressions) - str_replace() nhanh hơn 40% so với preg_replace() - ereg('regex') nhanh hơn 17% so với preg_match('/regex/') - preg_match('/regex/i') nhanh hơn 68% so với eregi('regex') 12. Top 10 các hàm có ích nhất - đắt giá nhất - file_put_contents() - opendir() readdir() closedir() - scandir() - fopen() fread() fclose() - memcache->get() - memcache->set() - implode('n', file()) - include() - include_once() - file_get_contents() 13. Top 10 các hàm tiết kiệm thời gian nhiều nhất ( biggest time savers (per call)) - xcache_set() vs. file_put_contents() - xcache_get() vs. memcache->get() - xcache_set() vs. memcache->set() - file_get_contents() vs. fopen(), fread(), fclose() - file_get_contents() vs. implode('n', file()) - include(relative) vs. include(full_path) - require_once() vs. include() - scandir() vs. opendir() readdir() closedir() - static method vs. call_user_func() - preg_match(/regex/i) vs. eregi(regex) Share on Facebook Share on Twitter Share on Google Plus RELATED POSTS
## 0 nhận xét :
## Đăng nhận xét

WARC-Identified-Payload-Type: application/xhtml+xml

Server: GSE

X-Content-Type-Options: nosniff

Cache-Control: private, max-age=0

X-XSS-Protection: 1; mode=block

Content-Type: text/html; charset=UTF-8


text:
Video Categories
Today's Top 10 Phim
- Nhân Gian Huyền Ảo
- Bao Thanh Thiên Trọn Bộ
- Rồng Bay Phụng Múa
- Thần Cơ Diệu Toán Lưu Bá Ôn
- Cô Gái Đồ Long 1986
- Thủy Hử -108 Anh Hùng Lương Sơn Bạc
- Cô Dâu 8 Tuổi - phim Ấn
- Anh Hùng Cái Thế Tào Tháo
- Tình Thiên Thu - Tam Sinh Tam Thế
- Phong Thần Diễn Nghĩa
Other Websites
- Tám Vui Lắm
- Hát Karaoke Online
- Bếp Nhà Ta
- Pháp Âm
- Vietnamese Dictionary
- Báo Đời
- Yêu Nhạc Vàng
- Anispace

markdown:
### Video Categories
### Today's Top 10 Phim
[Nhân Gian Huyền Ảo](/index.html?cid=8215&q=Nhan+Gian+Huyen+Ao) [Bao Thanh Thiên Trọn Bộ](/index.html?cid=5960&q=Bao+Thanh+Thien+Tron+Bo) [Rồng Bay Phụng Múa](/index.html?cid=8701&q=Rong+Bay+Phung+Mua) [Thần Cơ Diệu Toán Lưu Bá Ôn](/index.html?cid=7108&q=Than+Co+Dieu+Toan+Luu+Ba+On) [Cô Gái Đồ Long 1986](/index.html?cid=4512&q=Co+Gai+Do+Long+1986) [Thủy Hử -108 Anh Hùng Lương Sơn Bạc](/index.html?cid=4269&q=Thuy+Hu+-108+Anh+Hung+Luong+Son+Bac) [Cô Dâu 8 Tuổi - phim Ấn](/index.html?cid=8354&q=Co+Dau+8+Tuoi+-+phim+An) [Anh Hùng Cái Thế Tào Tháo](/index.html?cid=8774&q=Anh+Hung+Cai+The+Tao+Thao) [Tình Thiên Thu - Tam Sinh Tam Thế](/index.html?cid=8794&q=Tinh+Thien+Thu+-+Tam+Sinh+Tam+The) [Phong Thần Diễn Nghĩa](/index.html?cid=576&q=Phong+Than+Dien+Nghia)
### Other Websites
[Tám Vui Lắm](http://www.tamvl.com/) [Hát Karaoke Online](http://www.timkaraoke.com/) [Bếp Nhà Ta](http://www.bepnhata.com/) [Pháp Âm](http://www.kinhphat.org/) [Vietnamese Dictionary](http://www.vndic.org) [Báo Đời](http://www.baodoi.com) [Yêu Nhạc Vàng](http://www.yeunhacvang.com) [Anispace](http://www.anispace.net)

Server: cloudflare-nginx

Set-Cookie: __cfduid=d0f08f03d1f47a669a6d87e6a8c67a0a41505938328; expires=Thu, 20-Sep-18 20:12:08 GMT; path=/; domain=.video4viet.com; HttpOnly


Set-Cookie: __cfduid=d21ad57c8f9e626bdab3d50f77fb5b0781505938316; expires=Thu, 20-Sep-18 20:11:56 GMT; path=/; domain=.video4viet.com; HttpOnly


text:
Trung Đông
Giáo dục
Châu Á-TBD
Môi trường
Xã hội
Phong cách
(TTXVN/Vietnam+)
29/07/2017 05:35 GMT+7
Bản in
Đời sống
Châu Mỹ
Thể thao
Đời sống
Châu Âu
Doanh nghiệp
Trung Đông
Xã hội

markdown:
Ngày 28/7, Anh đã dỡ bỏ lệnh cấm hành khách mang các thiết bị điện tử lên khoang hành khách của một số chuyến bay từ Thổ Nhĩ Kỳ sau khi tiến hành các biện pháp an ninh mới, đồng thời nhấn mạnh các lệnh hạn chế khác sẽ được xem xét trong từng trường hợp.
Trong một tuyên bố, Bộ trưởng Giao thông Anh Chris Grayling nêu rõ sau khi xem xét kỹ lưỡng những thay đổi được tiến hành vào tháng 3 vừa qua, cũng như qua quá trình phối hợp với các đối tác quốc tế và ngành công nghiệp về các biện pháp tăng cường an ninh, Anh đã quyết định dỡ bỏ lệnh cấm mang các thiết bị điện tử lên máy bay trong một số chuyến bay đến nước này.
[[Anh sắp bỏ lệnh cấm mang đồ điện tử trên chuyến bay từ Thổ Nhĩ Kỳ]](http://www.vietnamplus.vn/anh-sap-bo-lenh-cam-mang-do-dien-tu-tren-chuyen-bay-tu-tho-nhi-ky/457093.vnp)
Hành khách sẽ được phép mang máy tính xách tay và các máy tính bảng trên các chuyến bay của Hãng hàng không Thổ Nhĩ Kỳ (Turkish Airlines) từ các sân bay Ataturk và Sabiha Gokcen của thành phố Istanbul, các chuyến bay từ Sabiha Gokcen và Izmir của hãng hàng không Pegasus Airlines.
Sân bay Sabiha Gokcen là sân bay đầu tiên được hoàn toàn dỡ bỏ lệnh cấm này.
Tuy nhiên, Anh sẽ giữ nguyên các biện pháp hạn chế đối với những thiết bị điện tử trên các chuyến bay khác đến từ những sân bay trên hoặc địa điểm khác của Thổ Nhĩ Kỳ, Liban, Ai Cập, Jordan, Saudi Arabia và Tunisia.
Các hạn chế này sẽ được dỡ bỏ khi Chính phủ Anh thiết lập được các biện pháp an ninh phù hợp.
Tháng 3 vừa qua, Anh và Mỹ đã cấm hành khách đến từ các nước Trung Đông và Bắc Phi mang các thiết bị điện tử lớn hơn điện thoại di động theo hành lý xách tay.
Lệnh cấm được đưa ra do lo ngại các tổ chức khủng bố cài bom vào các thiết bị điện tử cỡ lớn như máy tính bảng và máy tính xách tay.
Hiện Mỹ dỡ bỏ lệnh cấm này sau khi các sân bay lớn trong khu vực đã tiến hành các biện pháp khác để tăng cường an ninh, trong đó có việc kiểm tra các thiết bị điện tử nhằm đảm bảo rằng các thiết bị này không chứa bom./.

Cache-Control: no-cache

Connection: keep-alive


text:
Riva cùng người bạn diễn gốc Pháp Jean-Louis Trintignant (81 tuổi) đã làm cả liên hoan phim rung động trước câu truyện tình giữa hai giáo viên âm nhạc nghỉ hưu có tên Georges và Anne. Mối quan hệ của họ bị thử thách đầy nghiệt ngã khi bà bất ngờ bị đột quỵ.
[Amour đoạt giải Cành cọ Vàng tại Liên hoan phim Cannes]
Tác phẩm của đạo diễn người Áo Michael Haneke này đã đưa người xem tới những đau đớn tột cùng trong tình yêu, khi Anne hấp hối và chịu những thương tổn cả về thể xác lẫn tinh thần, trong khi Georges vẫn túc trực bên bà từng phút giây.
Vào vai một cách xuất sắc đến đáng kinh ngạc, Riva tiết lộ bí quyết diễn xuất thành công là nhờ bà đã gửi cả trái tim lẫn tâm hồn mình vào vai diễn, thậm chí còn ngủ lại trong trường quay khi bộ phim đang được thực hiện để được nhập tâm vào vai Anne.
Nữ diễn viên cao tuổi này cho biết: “Tôi có một đam mê rất lớn với vai diễn này, và đã tự thuyết phục bản thân đặt mình vào tình thế của nhân vật Anne.”
“Tôi đã làm mọi thứ với nhiệt huyết lớn, để rồi không có gì trở nên quá khó khăn cả. Mỗi sáng tôi đều vui vẻ chạy tới trường quay, và đối với tôi, đây là một niềm hạnh phúc vô cùng lớn lao.”
Lần gần đây nhất Riva góp mặt tại Cannes đã cách đây hơn… nửa thế kỉ. Vào năm 1959, khi ấy nữ diễn viên này đã vào vai trong "Hiroshima Mon Amour", được trình chiếu ở Cannes song không tham gia tranh giải do sợ những hiềm khích về chính trị với nước Mỹ.
“Vào năm 1959, mọi thứ thật khác bây giờ. Nhưng tôi vẫn nhớ rõ mọi thứ. Khi ấy tôi khoảng hơn 30 tuổi, và lần đầu xuất hiện tại Cannes. Cảm giác của tôi khi ấy thật trong sáng.
“Bộ phim đã gây được tiếng vang lớn và đến nay người ta vẫn nói về nó. Có một điều trùng hợp là từ ‘Amour’ trong 2 bộ phim tôi tham gia: ‘Hiroshima Mon Amour’ và giờ lại là ‘Amour’. Thật buồn cười phải không?” bà chia sẻ.
Đoàn làm phim Amour trên bục vinh quang tại Cannes lần thứ 65 (Nguồn: Getty Images)
Vào tuần trước, nữ diễn viên cao tuổi này đã buộc phải rời khỏi một bữa tiệc tối với các nhà tổ chức Cannes do quá mệt mỏi vì trả lời phỏng vấn cả ngày. Song khi trò chuyện với AFP, Riva vẫn cho rằng mình còn đủ sức để hóa thân vào nhiều vai diễn khác nhau.
“Mỗi nhân vật đều có nhiều mảnh đời riêng trong đó. Khi đã vào nghề diễn viên, bạn phải biết cách phát triển tất cả. Cái cảm giác được rời bỏ bản thân mình để biến thành một ai đó, tới một nơi không rõ ràng thật tuyệt vời.”
Bà bày tỏ thêm: “Nhiều người nói về việc nhập tâm vào nhân vật. Nghe thì kì cục thật đấy, nhưng điều đó thật sự diễn ra, khi bạn gửi trọn cả thể xác lẫn trái tim. Nghề diễn viên có thể đau đớn, khó khăn nhưng cũng thật kì thú.”
“Ở tuổi 80, nhất lại là phái nữ nữa, thật sự hiếm có vai diễn nào cho những người như tôi. Song sẽ có thời điểm những cơ hội như thế này xuất hiện, và đó là một món quà tuyệt vời. Bạn sẽ không chần chừ lấy một giây,” bà kết luận./.

markdown:
Riva cùng người bạn diễn gốc Pháp Jean-Louis Trintignant (81 tuổi) đã làm cả liên hoan phim rung động trước câu truyện tình giữa hai giáo viên âm nhạc nghỉ hưu có tên Georges và Anne. Mối quan hệ của họ bị thử thách đầy nghiệt ngã khi bà bất ngờ bị đột quỵ.
[
[
[Amour đoạt giải Cành cọ Vàng tại Liên hoan phim Cannes](http://www.vietnamplus.vn/Home/Amour-doat-giai-Canh-co-vang-o-LHP-Cannes-2012/20125/142238.vnplus)]
Tác phẩm của đạo diễn người Áo Michael Haneke này đã đưa người xem tới những đau đớn tột cùng trong tình yêu, khi Anne hấp hối và chịu những thương tổn cả về thể xác lẫn tinh thần, trong khi Georges vẫn túc trực bên bà từng phút giây.
Vào vai một cách xuất sắc đến đáng kinh ngạc, Riva tiết lộ bí quyết diễn xuất thành công là nhờ bà đã gửi cả trái tim lẫn tâm hồn mình vào vai diễn, thậm chí còn ngủ lại trong trường quay khi bộ phim đang được thực hiện để được nhập tâm vào vai Anne.
Nữ diễn viên cao tuổi này cho biết: “Tôi có một đam mê rất lớn với vai diễn này, và đã tự thuyết phục bản thân đặt mình vào tình thế của nhân vật Anne.”
“Tôi đã làm mọi thứ với nhiệt huyết lớn, để rồi không có gì trở nên quá khó khăn cả. Mỗi sáng tôi đều vui vẻ chạy tới trường quay, và đối với tôi, đây là một niềm hạnh phúc vô cùng lớn lao.”
Lần gần đây nhất Riva góp mặt tại Cannes đã cách đây hơn… nửa thế kỉ. Vào năm 1959, khi ấy nữ diễn viên này đã vào vai trong "Hiroshima Mon Amour", được trình chiếu ở Cannes song không tham gia tranh giải do sợ những hiềm khích về chính trị với nước Mỹ.
“Vào năm 1959, mọi thứ thật khác bây giờ. Nhưng tôi vẫn nhớ rõ mọi thứ. Khi ấy tôi khoảng hơn 30 tuổi, và lần đầu xuất hiện tại Cannes. Cảm giác của tôi khi ấy thật trong sáng.
“Bộ phim đã gây được tiếng vang lớn và đến nay người ta vẫn nói về nó. Có một điều trùng hợp là từ ‘Amour’ trong 2 bộ phim tôi tham gia: ‘Hiroshima Mon Amour’ và giờ lại là ‘Amour’. Thật buồn cười phải không?” bà chia sẻ.
![](http://img.vietnamplus.vn/t660/Uploaded_VNP/tngztn/20120528/amour%20cannes.jpg)
Đoàn làm phim Amour trên bục vinh quang tại Cannes lần thứ 65 (Nguồn: Getty Images)
Đoàn làm phim Amour trên bục vinh quang tại Cannes lần thứ 65 (Nguồn: Getty Images)
Vào tuần trước, nữ diễn viên cao tuổi này đã buộc phải rời khỏi một bữa tiệc tối với các nhà tổ chức Cannes do quá mệt mỏi vì trả lời phỏng vấn cả ngày. Song khi trò chuyện với AFP, Riva vẫn cho rằng mình còn đủ sức để hóa thân vào nhiều vai diễn khác nhau.
“Mỗi nhân vật đều có nhiều mảnh đời riêng trong đó. Khi đã vào nghề diễn viên, bạn phải biết cách phát triển tất cả. Cái cảm giác được rời bỏ bản thân mình để biến thành một ai đó, tới một nơi không rõ ràng thật tuyệt vời.”
Bà bày tỏ thêm: “Nhiều người nói về việc nhập tâm vào nhân vật. Nghe thì kì cục thật đấy, nhưng điều đó thật sự diễn ra, khi bạn gửi trọn cả thể xác lẫn trái tim. Nghề diễn viên có thể đau đớn, khó khăn nhưng cũng thật kì thú.”
“Ở tuổi 80, nhất lại là phái nữ nữa, thật sự hiếm có vai diễn nào cho những người như tôi. Song sẽ có thời điểm những cơ hội như thế này xuất hiện, và đó là một món quà tuyệt vời. Bạn sẽ không chần chừ lấy một giây,” bà kết luận./.
![](http://img.vietnamplus.vn/t660/Uploaded_VNP/tngztn/20120528/Cannes%202012.jpg)


text:
Trung Đông
Giáo dục
Châu Á-TBD
Môi trường
Xã hội
Phong cách
Lê Minh (TTXVN/Vietnam+)
26/04/2015 18:03 GMT+7
Bản in
Kinh tế
Tài chính
Doanh nghiệp
Chính trị
Công nghệ
Tài chính
Doanh nghiệp
Thể thao
Trung Đông
Xã hội


text:
Trung Đông
Giáo dục
Châu Á-TBD
Môi trường
Xã hội
Phong cách
K GỬIH (TTXVN/Vietnam+)
16/05/2017 17:11 GMT+7
Bản in
Xã hội
Người Việt bốn phương
Doanh nghiệp
Thể thao
Trung Đông


text:
Theo THX, Cơ quan thăm dò địa chất Mỹ thông báo đêm 17/5, một trận động đất mạnh 6,2 độ Richter đã làm rung chuyển vùng ngoài khơi bờ biển Aisen của Chile.
Tâm chấn động đất ở độ sâu 10km, cách thành phố cảng Puerto Mont 675km về phía Tây Nam.
Hiện chưa có cảnh báo về sóng thần sau trận động đất này.
[Trận động đất mạnh 7,2 độ Richter ngoài khơi Chile]
Trước đó, ngày 25/3, ngoài khơi vùng biển Maule của nước này cũng hứng chịu trận động đất mạnh 7,2 độ Richter. Tâm của trận động đất nằm ở 35,1160 vĩ độ Nam, 72,6580 kinh độ Tây và có độ sâu 10km.
Đây cũng là khu vực từng hứng chịu trận động đất kinh hoàng 8,8 độ Richter hồi năm 2010, cướp đi sinh mạng của khoảng 500 người và gây thiệt hại vật chất hàng chục tỷ USD.
Cơ quan Thăm dò địa chất Mỹ (USGS) cho biết tâm chấn của trận động đất nằm ở độ sâu 30km. Các tòa nhà ở thủ đô Santiago, cách địa điểm xảy ra động đất hơn 200km về phía Bắc, cũng bị rung lắc, gây hoảng loạn trong dân chúng.
Cơ quan chức năng đã ban bố lệnh cảnh báo sóng thần và buộc người dân sinh sống dọc bờ biển sơ tán tới khu vực an toàn./.
Tâm chấn động đất ở độ sâu 10km, cách thành phố cảng Puerto Mont 675km về phía Tây Nam.
Hiện chưa có cảnh báo về sóng thần sau trận động đất này.
[Trận động đất mạnh 7,2 độ Richter ngoài khơi Chile]
Trước đó, ngày 25/3, ngoài khơi vùng biển Maule của nước này cũng hứng chịu trận động đất mạnh 7,2 độ Richter. Tâm của trận động đất nằm ở 35,1160 vĩ độ Nam, 72,6580 kinh độ Tây và có độ sâu 10km.
Đây cũng là khu vực từng hứng chịu trận động đất kinh hoàng 8,8 độ Richter hồi năm 2010, cướp đi sinh mạng của khoảng 500 người và gây thiệt hại vật chất hàng chục tỷ USD.
Cơ quan Thăm dò địa chất Mỹ (USGS) cho biết tâm chấn của trận động đất nằm ở độ sâu 30km. Các tòa nhà ở thủ đô Santiago, cách địa điểm xảy ra động đất hơn 200km về phía Bắc, cũng bị rung lắc, gây hoảng loạn trong dân chúng.
Cơ quan chức năng đã ban bố lệnh cảnh báo sóng thần và buộc người dân sinh sống dọc bờ biển sơ tán tới khu vực an toàn./.

markdown:
Theo THX, Cơ quan thăm dò địa chất Mỹ thông báo đêm 17/5, một trận động đất mạnh 6,2 độ Richter đã làm rung chuyển vùng ngoài khơi bờ biển Aisen của Chile.
Tâm chấn động đất ở độ sâu 10km, cách thành phố cảng Puerto Mont 675km về phía Tây Nam.
Hiện chưa có cảnh báo về sóng thần sau trận động đất này.
Trước đó, ngày 25/3, ngoài khơi vùng biển Maule của nước này cũng hứng chịu trận động đất mạnh 7,2 độ Richter. Tâm của trận động đất nằm ở 35,1160 vĩ độ Nam, 72,6580 kinh độ Tây và có độ sâu 10km.
Đây cũng là khu vực từng hứng chịu trận động đất kinh hoàng 8,8 độ Richter hồi năm 2010, cướp đi sinh mạng của khoảng 500 người và gây thiệt hại vật chất hàng chục tỷ USD.
Cơ quan Thăm dò địa chất Mỹ (USGS) cho biết tâm chấn của trận động đất nằm ở độ sâu 30km. Các tòa nhà ở thủ đô Santiago, cách địa điểm xảy ra động đất hơn 200km về phía Bắc, cũng bị rung lắc, gây hoảng loạn trong dân chúng.
Cơ quan chức năng đã ban bố lệnh cảnh báo sóng thần và buộc người dân sinh sống dọc bờ biển sơ tán tới khu vực an toàn./.
Tâm chấn động đất ở độ sâu 10km, cách thành phố cảng Puerto Mont 675km về phía Tây Nam.
Hiện chưa có cảnh báo về sóng thần sau trận động đất này.
[Trận động đất mạnh 7,2 độ Richter ngoài khơi Chile]
[Trận động đất mạnh 7,2 độ Richter ngoài khơi Chile]
Trước đó, ngày 25/3, ngoài khơi vùng biển Maule của nước này cũng hứng chịu trận động đất mạnh 7,2 độ Richter. Tâm của trận động đất nằm ở 35,1160 vĩ độ Nam, 72,6580 kinh độ Tây và có độ sâu 10km.
Đây cũng là khu vực từng hứng chịu trận động đất kinh hoàng 8,8 độ Richter hồi năm 2010, cướp đi sinh mạng của khoảng 500 người và gây thiệt hại vật chất hàng chục tỷ USD.
Cơ quan Thăm dò địa chất Mỹ (USGS) cho biết tâm chấn của trận động đất nằm ở độ sâu 30km. Các tòa nhà ở thủ đô Santiago, cách địa điểm xảy ra động đất hơn 200km về phía Bắc, cũng bị rung lắc, gây hoảng loạn trong dân chúng.
Cơ quan chức năng đã ban bố lệnh cảnh báo sóng thần và buộc người dân sinh sống dọc bờ biển sơ tán tới khu vực an toàn./.


text:
Bí quyết lựa bơ chín thơm ngon, béo ngậy, ngọt bùi
Trái bơ
Làm hỏng tiết mục của ảo thuật gia nổi tiếng, nữ Idol Kpop bị chỉ trích nặng nề
Điểm danh 10 trường đại học được xếp hạng "đỉnh" nhất Việt Nam
Lộ diện thí sinh khiến giám khảo siêu đanh đá Nam Trung cũng phải "câm nín"
Giám đốc Apple còn không dùng được tính năng Face ID, thì các tín đồ lỡ trang điểm đẹp sao mở khoá?
MAMA 2017 tổ chức tại Việt Nam, hơn 14 nhóm nhạc và idol lỡ hẹn cùng fan Việt
Ai cũng tưởng 2 con trăn đang giao phối, nhưng thực ra chúng có một âm mưu khác

markdown:
[Cẩm nang giải trí](/chuyen-muc-video/cam-nang-giai-tri-7.html)
# Bí quyết lựa bơ chín thơm ngon, béo ngậy, ngọt bùi
####
[Trái bơ ](/tags/trai-bo.html) [
](/lam-hong-tiet-muc-cua-ao-thuat-gia-noi-tieng-nu-idol-kpop-bi-chi-trich-nang-ne-v-139572.html)
![](http://static2.yan.vn/YanThumbNews/2167221/201709/320x160_fea92698-39bf-45a4-8010-de9598b74e35.jpg)
Làm hỏng tiết mục của ảo thuật gia nổi tiếng, nữ Idol Kpop bị chỉ trích nặng nề
[
](/diem-danh-10-truong-dai-hoc-duoc-xep-hang-dinh-nhat-viet-nam-v-138975.html)
![](http://static2.yan.vn/YanThumbNews/2167221/201709/320x160_3f0533c5-89f2-4f5e-93eb-a100a687e2c3.jpg)
Điểm danh 10 trường đại học được xếp hạng "đỉnh" nhất Việt Nam
[
](/lo-dien-thi-sinh-khien-giam-khao-sieu-danh-da-nam-trung-cung-phai-cam-nin-v-139160.html)
![](http://static2.yan.vn/YanThumbNews/2167221/201709/320x160_1b432321-96d3-450c-9076-c49766d02bb8.jpg)
Lộ diện thí sinh khiến giám khảo siêu đanh đá Nam Trung cũng phải "câm nín"
[
](/giam-doc-apple-con-khong-dung-duoc-tinh-nang-face-id-thi-cac-tin-do-lo-trang-diem-dep-sao-mo-khoa-v-139655.html)
![](http://static2.yan.vn/YanThumbNews/2167221/201709/320x160_9cfca216-8e2e-431a-a8ff-5d4c1125f11f.jpg)
Giám đốc Apple còn không dùng được tính năng Face ID, thì các tín đồ lỡ trang điểm đẹp sao mở khoá?
[
](/mama-2017-to-chuc-tai-viet-nam-hon-14-nhom-nhac-va-idol-lo-hen-cung-fan-viet-v-139570.html)
![](http://static2.yan.vn/YanThumbNews/2167221/201709/320x160_9ce1b5f0-873a-4d95-aec9-29f3df8eb5b8.jpg)
MAMA 2017 tổ chức tại Việt Nam, hơn 14 nhóm nhạc và idol lỡ hẹn cùng fan Việt
[
](/ai-cung-tuong-2-con-tran-dang-giao-phoi-nhung-thuc-ra-chung-co-mot-am-muu-khac-v-137661.html)
![](http://static2.yan.vn/YanThumbNews/2167221/201708/320x160_380be301-1a18-4f1b-b5a1-c2dbf51d9f72.jpg)
Ai cũng tưởng 2 con trăn đang giao phối, nhưng thực ra chúng có một âm mưu khác

Server: nginx

Vary: Accept-Encoding


text:
Dung nhan của cô nàng được mệnh danh là 'búp bê sống' Trần Dĩ Mạn khiến nhiều người nước ngoài cảm thấy sợ hãi.
Trần Dĩ Mạn là hot girl đang nổi đình nổi đám tại Trung Quốc, được nhiều bạn trẻ phong cho danh hiệu "búp bê sống châu Á". Không riêng Weibo, cô gái sinh năm 1995 cũng nổi tiếng khắp các trang mạng xã hội lớn nhỏ khác của Trung Quốc.
Chính vì dung nhan lạ lẫm, tên tuổi và hình ảnh của Trần Dĩ Mạn còn lan sang cả một số quốc gia trong khu vực như Hàn Quốc, Thái Lan, Việt Nam... Tuy nhiên, nhiều người lại tỏ ra chán ngán với những biểu hiện trên khuôn mặt của Trần Dĩ Mạn.
Nhan sắc của Dĩ Mạn bị nhiều người cho rằng quá khô cứng và không có gì nổi bật.
Sau khi xem ảnh Trần Dĩ Mạn, nhiều dân mạng nước ngoài đã phải thốt lên rằng nhan sắc của cô vô hồn, như tượng sáp và có thể khiến trẻ em khóc thét. Một vài người cho rằng Dĩ Mạn cũng thuộc kiểu hot girl nhưng không có gì nổi bật so với những cô nàng nổi tiếng khác trên mạng xã hội.
Dù vậy, tại Trung Quốc, Trần Dĩ Mạn đang có một sự nghiệp đỉnh cao khi thường xuyên nhận được lời mời chụp ảnh quảng cáo cho các thương hiệu đồ lót vì sở hữu một thân hình nóng bỏng, cao 1m70, nặng 52kg, số đo ba vòng lần lượt là 88 - 61 - 90.
Xem thêm một vài hình ảnh của Trần Dĩ Mạn:
Nhiều dân mạng nước ngoài cho rằng cô là tượng sáp.
Ấn tượng với dân mạng Trung Quốc nhưng nhiều người trong khu vực không đánh giá cao nhan sắc của cô.
Mỗi ảnh dường như là một người khác, chỉ có đôi mắt là vô hồn.
Đôi mắt to là điểm nhấn nhưng cũng là lỗi khi chỉ có một sắc thái.
"Búp bê sống" nổi tiếng Trung Quốc bị dìm hàng ở nước ngoài.

markdown:
**Dung nhan của cô nàng được mệnh danh là 'búp bê sống' Trần Dĩ Mạn khiến nhiều người nước ngoài cảm thấy sợ hãi.** **Trần Dĩ Mạn** là [hot girl](http://www.yan.vn/tags/hot-girl.html) đang nổi đình nổi đám tại Trung Quốc, được nhiều bạn trẻ phong cho danh hiệu "búp bê sống châu Á". Không riêng Weibo, cô gái sinh năm 1995 cũng nổi tiếng khắp các trang mạng xã hội lớn nhỏ khác của Trung Quốc.
Chính vì dung nhan lạ lẫm, tên tuổi và hình ảnh của
**Trần Dĩ Mạn** còn lan sang cả một số quốc gia trong khu vực như Hàn Quốc, Thái Lan, Việt Nam... Tuy nhiên, nhiều người lại tỏ ra chán ngán với những biểu hiện trên khuôn mặt của **Trần Dĩ Mạn**.
Nhan sắc của
**Dĩ Mạn** bị nhiều người cho rằng quá khô cứng và không có gì nổi bật.
Sau khi xem ảnh
**Trần Dĩ Mạn**, nhiều dân mạng nước ngoài đã phải thốt lên rằng nhan sắc của cô vô hồn, như tượng sáp và có thể khiến trẻ em khóc thét. Một vài người cho rằng **Dĩ Mạn** cũng thuộc kiểu hot girl nhưng không có gì nổi bật so với những cô nàng nổi tiếng khác trên [mạng xã hội](http://www.yan.vn/tags/mang-xa-hoi.html).
Dù vậy, tại Trung Quốc,
**Trần Dĩ Mạn** đang có một sự nghiệp đỉnh cao khi thường xuyên nhận được lời mời chụp ảnh quảng cáo cho các thương hiệu đồ lót vì sở hữu một thân hình nóng bỏng, cao 1m70, nặng 52kg, số đo ba vòng lần lượt là 88 - 61 - 90.
Xem thêm một vài hình ảnh của
**Trần Dĩ Mạn**:
Nhiều dân mạng nước ngoài cho rằng cô là tượng sáp.
Ấn tượng với
[dân mạng](http://www.yan.vn/tags/cu-dan-mang.html) Trung Quốc nhưng nhiều người trong khu vực không đánh giá cao nhan sắc của cô.
Mỗi ảnh dường như là một người khác, chỉ có đôi mắt là vô hồn.
Đôi mắt to là điểm nhấn nhưng cũng là lỗi khi chỉ có một sắc thái.
"Búp bê sống" nổi tiếng Trung Quốc bị dìm hàng ở nước ngoài.


text:
Tìm kiếm
Display results as :
Số bài
Chủ đề
Advanced Search
Chúc lớp trưởng một ngày bình yên, êm ấm bên người mà mình yêu. Nhưng nhớ đừng làm gì quá giới hạn của nó Giởn thôi ko biết lớp trưởng nhà ta có em nào chưa nửa ^^ Thay mặt chủ tịch nước, chủ tịch quốc hội, các bộ trưởng, các ban ngành, 84 triệu người VN, 6 tỷ dân trên thế giới, chúc mừng ...Chúc Mừng Sinh Nhật Các Bạn XHHK33
«´¨`•..¤ Nguyễn Thanh Hà 05-05-1990 ¤..•´¨`
»
Giáp Thanh Phúc 13-05-1988
(¸.•'´(¸.•'´¤Lương Thị Thiếp 29-05-1989 ¤`'•.¸)`'•.¸)
Huỳnh Đình Tuấn Vũ 01-05-1991
«´¨`•..¤Huỳnh Đình Tuấn Vũ 01-05-1991¤..•´¨`»
CHÀO CÁC BẠN,VÌ LÝ DO RIÊNG THỜI GIAN VỪA QUA VÌ NHIỀU CÔNG VIÊC MINH KO THỂ DÀNH NHIỀU TIME ĐỂ XÂY DỰNG DIÊN ĐÀN ĐC.THỜI GIAN NÀY MONG ĐC GIÚP ĐỞ CỦA CÁC THÀNH VIÊN VỀ MẶT NỘI DUNG ĐỂ XÂY DỰNG DD XÃ HỘI HỌC NGÀY CÀNG LỚN MẠNH
.
ĐÔI BÓNG XHH MUÔN NĂM CHÚNG TÔI LUÔN CỖ VŨ HẾT MÌNH...TỰ TIN CHIẾN THẮNG.HIHI XÃ HỘI HỌC
VÔ ĐỊCH ^^
::
THÔNG TIN NỘI BỘ
::
CHAT RUM
Share
|
HUONG DAN CACH CHAT ONLINE TREN FRUM
Tác giả
Thông điệp
Admin
Admin
Tổng số bài gửi
:
187
Reputation
:
5
Join date
:
20/12/2009
Tiêu đề: HUONG DAN CACH CHAT ONLINE TREN FRUM
Wed Oct 20, 2010 4:33 pm
"
CHÀO CÁC BẠN,CHUƠNG TRÌNH NÀY CUNG ĐƠN GIẢN THÔI.KHI KICK VAO DUONG LINK SE XUAT HIEN Ẹ MỘT CỦA SỔ.TRỨOC TIÊN BẠN KÍCH VÀO CHỮ ĐĂNG NHẬP PHÍA TRÊN GÓC PHẢI CỦA BẠN.NẾU BẠN ĐANG ĐANG NHẬP FRUM THÌ BẠN CO THỂ CHÁT ĐUỢC RỒI ĐÓI,ARCHIVES TỨC LÀ NỘI DUNG CHÁT CUA THÀNH VIÊN KHÁC LÚC TRỨOC.CÒN Fefresh tức là làm mới nội dung khi chát.thế thôi hết rồi bà con ơi.hêhhe
tuanlong
Super mod
Tổng số bài gửi
:
159
Reputation
:
4
Join date
:
20/12/2009
Age
:
26
Đến từ
:
HUE, LOP XHH-K33, ÄHKH-HUE
Tiêu đề: Re: HUONG DAN CACH CHAT ONLINE TREN FRUM
Thu Oct 21, 2010 6:09 pm
HAY HAY QUÁ, DO, CO PHAI DE HIEU HON KHONG NA! MA CONG NHAN ADMIN LAM KIEU NI HAN DE HIEU HON THIET! GIONG NHU DANG TIN QUANG CAO A HI! HEHEHEHE
THANH KIU NHIU NHA, BUA MO MAN THU CAI COAI! (KEKE)
HUONG DAN CACH CHAT ONLINE TREN FRUM
Trang
1
trong tổng số
1
trang
Similar topics
Similar topics
»
tính toán mớn nước
»
[Held] Phần mềm giúp các bạn xem clip Dailymotion không bị giật .
»
Ảnh hưởng của mặt thoáng chất lỏng đến ổn định tàu
»
Chữa cháy trên biển
»
[Fiction] Sword Art Online- Đăng kí nhân vật
Permissions in this forum:
Bạn
không có quyền
trả lời bài viết
::
THÔNG TIN NỘI BỘ
::
CHAT RUM
::
THÔNG TIN NỘI BỘ
::
CHAT RUM
Chuyển đến
:
Chọn Diễn Đàn
|
|--THÔNG TIN NỘI BỘ
| |--GÓP Ý
| |--ẢNH LỚP
| |--THÀNH VIÊN LỚP
| |--CHAT RUM
| |--NHẬT KÝ LỚP
|
|--HỌC TẬP
| |--CHUYÊN NGÀNH XÃ HỘI HỌC
| |--PHƯƠNG PHÁP NGHIÊN CỨU XHH
| |--TÀI LIỆU HỌC TẬP
| |--HIỂU BIẾT NGOÀI
| |--KỸ NĂNG MỀM
|
|--HOẠT ĐỘNG
| |--HOẠT ĐỘNG CỦA LỚP
| |--GIẢI TRÍ
| | |--TRUYỀN CƯỜI
| | |--NHẠC
| | |--PHIM
| | |--GAME-GIAI TRI
| |
| |--Family Online
| |--VĂN HÓA-SƯ KIỆN
| | |--TIN NÓNG
| | |--GIÁO DỤC
| | |--GIỚI TRẺ
| | |--TRAO ĐỔI-MUA BÁN
| | |--QUẢNG CÁO
| |
| |--GAME ONLINE-HACK
| |--AUDITION
| |--ĐỘT KICH
| |--PHONG THÀNH
| |--VÕ LÂM
|
|--CÂU LẶC BỘ-CỘNG ĐỒNG
|--PHẦN MỀM-ỨNG DỤNG
|--ỨNG DỤNG CHO MOBILE
|--ĐỒ HỌA-THIẾT KẾ
|--LẬP TRÌNH-WEB-FORUM
|--PHẦN MỀM CHO HỌC TẬP
Free forum
|
Khoa học
|
Trường
|
©
phpBB
|
Free forum support
|
Liên hệ
|
Report an abuse
|
Create your own blog

markdown:
![]()
Chúc lớp trưởng một ngày bình yên, êm ấm bên người mà mình yêu. Nhưng nhớ đừng làm gì quá giới hạn của nó Giởn thôi ko biết lớp trưởng nhà ta có em nào chưa nửa ^^
Thay mặt chủ tịch nước,
chủ tịch quốc hội,
các bộ trưởng, các ban ngành,
84 triệu người VN,
6 tỷ dân trên thế giới,
chúc mừng ...Chúc Mừng Sinh Nhật Các Bạn XHHK33
«´¨`•..¤ Nguyễn Thanh Hà 05-05-1990
¤..•´¨`»
Giáp Thanh Phúc 13-05-1988
(¸.•'´(¸.•'´¤Lương Thị Thiếp 29-05-1989
¤`'•.¸)`'•.¸)
Huỳnh Đình Tuấn Vũ 01-05-1991
«´¨`•..¤Huỳnh Đình Tuấn Vũ 01-05-1991¤..•´¨`» ![]()
![]()
![]()
ĐÔI BÓNG XHH MUÔN NĂM CHÚNG TÔI LUÔN CỖ VŨ HẾT MÌNH...TỰ TIN CHIẾN THẮNG.HIHI XÃ HỘI HỌC VÔ ĐỊCH ^^ ![]()
![]()
| |![]()
![]()
![]()
HAY HAY QUÁ, DO, CO PHAI DE HIEU HON KHONG NA! MA CONG NHAN ADMIN LAM KIEU NI HAN DE HIEU HON THIET! GIONG NHU DANG TIN QUANG CAO A HI! HEHEHEHE
THANH KIU NHIU NHA, BUA MO MAN THU CAI COAI! (KEKE)
![]()
HUONG DAN CACH CHAT ONLINE TREN FRUM
![]()
|» |
»
»
»
»

P3P: CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"


text:
- Nhấn phím F5 hoặc Shift+F5 để tải lại trang nếu đợi quá lâu.
- Chọn server khác để xem phim nếu như phim bị lỗi.
- Nếu mạng yếu thì nên chọn phim chất lượng thấp (360p, 480p), nếu muốn xem rõ nét thì chọn chất lượng cao (720p, 1080p).
- Hỗ trợ xem phim trên hầu hết các dòng điện thoại thông minh như Iphone, Ipad, Android, Lumia ...
- Click vào nút "Download" để tải phim về máy hoặc dùng phần mềm IDM để download.
- Click vào nút "Báo lỗi" nếu như không xem được phim để chúng tôi có thể khắc phục trong thời gian sớm nhất.
- Chúc các bạn xem phim vui vẻ tại ZPhim.com!
Google:1a1b1c2a2b2c3a3b3c4a4b4c5a5b5c6a6b6c7a7b7c8a8b8c9a9b9c10a10b10c11a11b11c12a12b12c13a13b13c14a14b14c15a15b15c16a16b16c17a17b17c18a18b18c19a19b19c20a20b20c21a21b21c22a22b22c23a23b23c24a24b24c
Docs:1a1b1c2a2b2c3a3b3c4a4b4c5a5b5c6a6b6c7a7b7c8a8b8c9a9b9c10a10b10c11a11b11c12a12b12c13a13b13c14a14b14c15a15b15c16a16b16c17a17b17c18a18b18c19a19b19c20a20b20c21a21b21c22a22b22c23a23b23c24a24b24c
24 Giờ Chống Khủng Bố 3 - 24 Hours Season 3 | Tập 16c - Server ZPhim
Top xem nhiều
-
Bậc Thầy Tình DụcMasters of Sex Season 12013 99,249 1
-
Biệt Đội Hawaii 1Hawaii Five-0 Season 12010 12,936 2
-
Mũi Tên Xanh 2Arrow Season 22013 27,390 3
-
Thiên Thần Bóng Tối 2Dark Angel Season 22002 29,273 4
-
Biệt Đội Hawaii 3Hawaii Five-0 Season 32012 8,730 5
-
Vượt Ngục 1Prison Break Season 12005 22,866 6
-
Trò Chơi Vương Quyền Phần 1Game Of Thrones Season 12011 13,982 7
-
Người Dơi Tương Lai 3Batman Beyond Season 32000 12,067 8
-
ChạmTouch Season 12012 22,399 9
-
Trò Chơi Vương Quyền Phần 2Game Of Thrones Season 22012 16,828 10

markdown:
- Nhấn phím F5 hoặc Shift+F5 để tải lại trang nếu đợi quá lâu.
- Chọn server khác để xem phim nếu như phim bị lỗi.
- Nếu mạng yếu thì nên chọn phim chất lượng thấp (360p, 480p), nếu muốn xem rõ nét thì chọn chất lượng cao (720p, 1080p).
- Hỗ trợ xem phim trên hầu hết các dòng điện thoại thông minh như Iphone, Ipad, Android, Lumia ...
- Click vào nút "Download" để tải phim về máy hoặc dùng phần mềm IDM để download.
- Click vào nút "Báo lỗi" nếu như không xem được phim để chúng tôi có thể khắc phục trong thời gian sớm nhất.
- Chúc các bạn xem phim vui vẻ tại ZPhim.com!
[1a](/xem-phim-24-gio-chong-khung-bo-3-204135) [1b](/xem-phim-24-gio-chong-khung-bo-3-204136) [1c](/xem-phim-24-gio-chong-khung-bo-3-204137) [2a](/xem-phim-24-gio-chong-khung-bo-3-204138) [2b](/xem-phim-24-gio-chong-khung-bo-3-204139) [2c](/xem-phim-24-gio-chong-khung-bo-3-204140) [3a](/xem-phim-24-gio-chong-khung-bo-3-204141) [3b](/xem-phim-24-gio-chong-khung-bo-3-204142) [3c](/xem-phim-24-gio-chong-khung-bo-3-204143) [4a](/xem-phim-24-gio-chong-khung-bo-3-204144) [4b](/xem-phim-24-gio-chong-khung-bo-3-204145) [4c](/xem-phim-24-gio-chong-khung-bo-3-204146) [5a](/xem-phim-24-gio-chong-khung-bo-3-204147) [5b](/xem-phim-24-gio-chong-khung-bo-3-204148) [5c](/xem-phim-24-gio-chong-khung-bo-3-204149) [6a](/xem-phim-24-gio-chong-khung-bo-3-204150) [6b](/xem-phim-24-gio-chong-khung-bo-3-204151) [6c](/xem-phim-24-gio-chong-khung-bo-3-204152) [7a](/xem-phim-24-gio-chong-khung-bo-3-204153) [7b](/xem-phim-24-gio-chong-khung-bo-3-204154) [7c](/xem-phim-24-gio-chong-khung-bo-3-204155) [8a](/xem-phim-24-gio-chong-khung-bo-3-204156) [8b](/xem-phim-24-gio-chong-khung-bo-3-204157) [8c](/xem-phim-24-gio-chong-khung-bo-3-204158) [9a](/xem-phim-24-gio-chong-khung-bo-3-204159) [9b](/xem-phim-24-gio-chong-khung-bo-3-204160) [9c](/xem-phim-24-gio-chong-khung-bo-3-204161) [10a](/xem-phim-24-gio-chong-khung-bo-3-204162) [10b](/xem-phim-24-gio-chong-khung-bo-3-204163) [10c](/xem-phim-24-gio-chong-khung-bo-3-204164) [11a](/xem-phim-24-gio-chong-khung-bo-3-204165) [11b](/xem-phim-24-gio-chong-khung-bo-3-204166) [11c](/xem-phim-24-gio-chong-khung-bo-3-204167) [12a](/xem-phim-24-gio-chong-khung-bo-3-204168) [12b](/xem-phim-24-gio-chong-khung-bo-3-204169) [12c](/xem-phim-24-gio-chong-khung-bo-3-204170) [13a](/xem-phim-24-gio-chong-khung-bo-3-204171) [13b](/xem-phim-24-gio-chong-khung-bo-3-204172) [13c](/xem-phim-24-gio-chong-khung-bo-3-204173) [14a](/xem-phim-24-gio-chong-khung-bo-3-204174) [14b](/xem-phim-24-gio-chong-khung-bo-3-204175) [14c](/xem-phim-24-gio-chong-khung-bo-3-204176) [15a](/xem-phim-24-gio-chong-khung-bo-3-204177) [15b](/xem-phim-24-gio-chong-khung-bo-3-204178) [15c](/xem-phim-24-gio-chong-khung-bo-3-204179) [16a](/xem-phim-24-gio-chong-khung-bo-3-204180) [16b](/xem-phim-24-gio-chong-khung-bo-3-204181) [16c](/xem-phim-24-gio-chong-khung-bo-3-204182) [17a](/xem-phim-24-gio-chong-khung-bo-3-204183) [17b](/xem-phim-24-gio-chong-khung-bo-3-204184) [17c](/xem-phim-24-gio-chong-khung-bo-3-204185) [18a](/xem-phim-24-gio-chong-khung-bo-3-204186) [18b](/xem-phim-24-gio-chong-khung-bo-3-204187) [18c](/xem-phim-24-gio-chong-khung-bo-3-204188) [19a](/xem-phim-24-gio-chong-khung-bo-3-204189) [19b](/xem-phim-24-gio-chong-khung-bo-3-204190) [19c](/xem-phim-24-gio-chong-khung-bo-3-204191) [20a](/xem-phim-24-gio-chong-khung-bo-3-204192) [20b](/xem-phim-24-gio-chong-khung-bo-3-204193) [20c](/xem-phim-24-gio-chong-khung-bo-3-204194) [21a](/xem-phim-24-gio-chong-khung-bo-3-204195) [21b](/xem-phim-24-gio-chong-khung-bo-3-204196) [21c](/xem-phim-24-gio-chong-khung-bo-3-204197) [22a](/xem-phim-24-gio-chong-khung-bo-3-204198) [22b](/xem-phim-24-gio-chong-khung-bo-3-204199) [22c](/xem-phim-24-gio-chong-khung-bo-3-204200) [23a](/xem-phim-24-gio-chong-khung-bo-3-204201) [23b](/xem-phim-24-gio-chong-khung-bo-3-204202) [23c](/xem-phim-24-gio-chong-khung-bo-3-204203) [24a](/xem-phim-24-gio-chong-khung-bo-3-204204) [24b](/xem-phim-24-gio-chong-khung-bo-3-204205) [24c-End](/xem-phim-24-gio-chong-khung-bo-3-204206)
Google:
[1a](/xem-phim-24-gio-chong-khung-bo-3-403260) [1b](/xem-phim-24-gio-chong-khung-bo-3-403261) [1c](/xem-phim-24-gio-chong-khung-bo-3-403262) [2a](/xem-phim-24-gio-chong-khung-bo-3-403263) [2b](/xem-phim-24-gio-chong-khung-bo-3-403264) [2c](/xem-phim-24-gio-chong-khung-bo-3-403265) [3a](/xem-phim-24-gio-chong-khung-bo-3-403266) [3b](/xem-phim-24-gio-chong-khung-bo-3-403267) [3c](/xem-phim-24-gio-chong-khung-bo-3-403268) [4a](/xem-phim-24-gio-chong-khung-bo-3-403269) [4b](/xem-phim-24-gio-chong-khung-bo-3-403270) [4c](/xem-phim-24-gio-chong-khung-bo-3-403271) [5a](/xem-phim-24-gio-chong-khung-bo-3-403272) [5b](/xem-phim-24-gio-chong-khung-bo-3-403273) [5c](/xem-phim-24-gio-chong-khung-bo-3-403274) [6a](/xem-phim-24-gio-chong-khung-bo-3-403275) [6b](/xem-phim-24-gio-chong-khung-bo-3-403276) [6c](/xem-phim-24-gio-chong-khung-bo-3-403277) [7a](/xem-phim-24-gio-chong-khung-bo-3-403278) [7b](/xem-phim-24-gio-chong-khung-bo-3-403279) [7c](/xem-phim-24-gio-chong-khung-bo-3-403280) [8a](/xem-phim-24-gio-chong-khung-bo-3-403281) [8b](/xem-phim-24-gio-chong-khung-bo-3-403282) [8c](/xem-phim-24-gio-chong-khung-bo-3-403283) [9a](/xem-phim-24-gio-chong-khung-bo-3-403284) [9b](/xem-phim-24-gio-chong-khung-bo-3-403285) [9c](/xem-phim-24-gio-chong-khung-bo-3-403286) [10a](/xem-phim-24-gio-chong-khung-bo-3-403287) [10b](/xem-phim-24-gio-chong-khung-bo-3-403288) [10c](/xem-phim-24-gio-chong-khung-bo-3-403289) [11a](/xem-phim-24-gio-chong-khung-bo-3-403290) [11b](/xem-phim-24-gio-chong-khung-bo-3-403291) [11c](/xem-phim-24-gio-chong-khung-bo-3-403292) [12a](/xem-phim-24-gio-chong-khung-bo-3-403293) [12b](/xem-phim-24-gio-chong-khung-bo-3-403294) [12c](/xem-phim-24-gio-chong-khung-bo-3-403295) [13a](/xem-phim-24-gio-chong-khung-bo-3-403296) [13b](/xem-phim-24-gio-chong-khung-bo-3-403297) [13c](/xem-phim-24-gio-chong-khung-bo-3-403298) [14a](/xem-phim-24-gio-chong-khung-bo-3-403299) [14b](/xem-phim-24-gio-chong-khung-bo-3-403300) [14c](/xem-phim-24-gio-chong-khung-bo-3-403301) [15a](/xem-phim-24-gio-chong-khung-bo-3-403302) [15b](/xem-phim-24-gio-chong-khung-bo-3-403303) [15c](/xem-phim-24-gio-chong-khung-bo-3-403304) [16a](/xem-phim-24-gio-chong-khung-bo-3-403305) [16b](/xem-phim-24-gio-chong-khung-bo-3-403306) [16c](/xem-phim-24-gio-chong-khung-bo-3-403307) [17a](/xem-phim-24-gio-chong-khung-bo-3-403308) [17b](/xem-phim-24-gio-chong-khung-bo-3-403309) [17c](/xem-phim-24-gio-chong-khung-bo-3-403310) [18a](/xem-phim-24-gio-chong-khung-bo-3-403311) [18b](/xem-phim-24-gio-chong-khung-bo-3-403312) [18c](/xem-phim-24-gio-chong-khung-bo-3-403313) [19a](/xem-phim-24-gio-chong-khung-bo-3-403314) [19b](/xem-phim-24-gio-chong-khung-bo-3-403315) [19c](/xem-phim-24-gio-chong-khung-bo-3-403316) [20a](/xem-phim-24-gio-chong-khung-bo-3-403317) [20b](/xem-phim-24-gio-chong-khung-bo-3-403318) [20c](/xem-phim-24-gio-chong-khung-bo-3-403319) [21a](/xem-phim-24-gio-chong-khung-bo-3-403320) [21b](/xem-phim-24-gio-chong-khung-bo-3-403321) [21c](/xem-phim-24-gio-chong-khung-bo-3-403322) [22a](/xem-phim-24-gio-chong-khung-bo-3-403323) [22b](/xem-phim-24-gio-chong-khung-bo-3-403324) [22c](/xem-phim-24-gio-chong-khung-bo-3-403325) [23a](/xem-phim-24-gio-chong-khung-bo-3-403326) [23b](/xem-phim-24-gio-chong-khung-bo-3-403327) [23c](/xem-phim-24-gio-chong-khung-bo-3-403328) [24a](/xem-phim-24-gio-chong-khung-bo-3-403329) [24b](/xem-phim-24-gio-chong-khung-bo-3-403330) [24c](/xem-phim-24-gio-chong-khung-bo-3-403331)
Docs:
[1a](/xem-phim-24-gio-chong-khung-bo-3-403332) [1b](/xem-phim-24-gio-chong-khung-bo-3-403333) [1c](/xem-phim-24-gio-chong-khung-bo-3-403334) [2a](/xem-phim-24-gio-chong-khung-bo-3-403335) [2b](/xem-phim-24-gio-chong-khung-bo-3-403336) [2c](/xem-phim-24-gio-chong-khung-bo-3-403337) [3a](/xem-phim-24-gio-chong-khung-bo-3-403338) [3b](/xem-phim-24-gio-chong-khung-bo-3-403339) [3c](/xem-phim-24-gio-chong-khung-bo-3-403340) [4a](/xem-phim-24-gio-chong-khung-bo-3-403341) [4b](/xem-phim-24-gio-chong-khung-bo-3-403342) [4c](/xem-phim-24-gio-chong-khung-bo-3-403343) [5a](/xem-phim-24-gio-chong-khung-bo-3-403344) [5b](/xem-phim-24-gio-chong-khung-bo-3-403345) [5c](/xem-phim-24-gio-chong-khung-bo-3-403346) [6a](/xem-phim-24-gio-chong-khung-bo-3-403347) [6b](/xem-phim-24-gio-chong-khung-bo-3-403348) [6c](/xem-phim-24-gio-chong-khung-bo-3-403349) [7a](/xem-phim-24-gio-chong-khung-bo-3-403350) [7b](/xem-phim-24-gio-chong-khung-bo-3-403351) [7c](/xem-phim-24-gio-chong-khung-bo-3-403352) [8a](/xem-phim-24-gio-chong-khung-bo-3-403353) [8b](/xem-phim-24-gio-chong-khung-bo-3-403354) [8c](/xem-phim-24-gio-chong-khung-bo-3-403355) [9a](/xem-phim-24-gio-chong-khung-bo-3-403356) [9b](/xem-phim-24-gio-chong-khung-bo-3-403357) [9c](/xem-phim-24-gio-chong-khung-bo-3-403358) [10a](/xem-phim-24-gio-chong-khung-bo-3-403359) [10b](/xem-phim-24-gio-chong-khung-bo-3-403360) [10c](/xem-phim-24-gio-chong-khung-bo-3-403361) [11a](/xem-phim-24-gio-chong-khung-bo-3-403362) [11b](/xem-phim-24-gio-chong-khung-bo-3-403363) [11c](/xem-phim-24-gio-chong-khung-bo-3-403364) [12a](/xem-phim-24-gio-chong-khung-bo-3-403365) [12b](/xem-phim-24-gio-chong-khung-bo-3-403366) [12c](/xem-phim-24-gio-chong-khung-bo-3-403367) [13a](/xem-phim-24-gio-chong-khung-bo-3-403368) [13b](/xem-phim-24-gio-chong-khung-bo-3-403369) [13c](/xem-phim-24-gio-chong-khung-bo-3-403370) [14a](/xem-phim-24-gio-chong-khung-bo-3-403371) [14b](/xem-phim-24-gio-chong-khung-bo-3-403372) [14c](/xem-phim-24-gio-chong-khung-bo-3-403373) [15a](/xem-phim-24-gio-chong-khung-bo-3-403374) [15b](/xem-phim-24-gio-chong-khung-bo-3-403375) [15c](/xem-phim-24-gio-chong-khung-bo-3-403376) [16a](/xem-phim-24-gio-chong-khung-bo-3-403377) [16b](/xem-phim-24-gio-chong-khung-bo-3-403378) [16c](/xem-phim-24-gio-chong-khung-bo-3-403379) [17a](/xem-phim-24-gio-chong-khung-bo-3-403380) [17b](/xem-phim-24-gio-chong-khung-bo-3-403381) [17c](/xem-phim-24-gio-chong-khung-bo-3-403382) [18a](/xem-phim-24-gio-chong-khung-bo-3-403383) [18b](/xem-phim-24-gio-chong-khung-bo-3-403384) [18c](/xem-phim-24-gio-chong-khung-bo-3-403385) [19a](/xem-phim-24-gio-chong-khung-bo-3-403386) [19b](/xem-phim-24-gio-chong-khung-bo-3-403387) [19c](/xem-phim-24-gio-chong-khung-bo-3-403388) [20a](/xem-phim-24-gio-chong-khung-bo-3-403389) [20b](/xem-phim-24-gio-chong-khung-bo-3-403390) [20c](/xem-phim-24-gio-chong-khung-bo-3-403391) [21a](/xem-phim-24-gio-chong-khung-bo-3-403392) [21b](/xem-phim-24-gio-chong-khung-bo-3-403393) [21c](/xem-phim-24-gio-chong-khung-bo-3-403394) [22a](/xem-phim-24-gio-chong-khung-bo-3-403395) [22b](/xem-phim-24-gio-chong-khung-bo-3-403396) [22c](/xem-phim-24-gio-chong-khung-bo-3-403397) [23a](/xem-phim-24-gio-chong-khung-bo-3-403398) [23b](/xem-phim-24-gio-chong-khung-bo-3-403399) [23c](/xem-phim-24-gio-chong-khung-bo-3-403400) [24a](/xem-phim-24-gio-chong-khung-bo-3-403401) [24b](/xem-phim-24-gio-chong-khung-bo-3-403402) [24c](/xem-phim-24-gio-chong-khung-bo-3-403403)
# 24 Giờ Chống Khủng Bố 3 - 24 Hours Season 3 | Tập 16c - Server ZPhim
[Xem thêm](/phim-24-gio-chong-khung-bo-3-8839)
## Top xem nhiều
-
### Bậc Thầy Tình DụcMasters of Sex Season 1
-
### Biệt Đội Hawaii 1Hawaii Five-0 Season 1
-
### Mũi Tên Xanh 2Arrow Season 2
-
### Thiên Thần Bóng Tối 2Dark Angel Season 2
-
### Biệt Đội Hawaii 3Hawaii Five-0 Season 3
-
### Vượt Ngục 1Prison Break Season 1
-
### Trò Chơi Vương Quyền Phần 1Game Of Thrones Season 1
-
### Người Dơi Tương Lai 3Batman Beyond Season 3
-
### ChạmTouch Season 1
-
### Trò Chơi Vương Quyền Phần 2Game Of Thrones Season 2

Access-Control-Allow-Methods: POST, GET, PUT, OPTIONS, PATCH, DELETE

Access-Control-Allow-Headers: X-Accept-Charset,X-Accept,Content-Type


text:
- Nhấn phím F5 hoặc Shift+F5 để tải lại trang nếu đợi quá lâu.
- Chọn server khác để xem phim nếu như phim bị lỗi.
- Nếu mạng yếu thì nên chọn phim chất lượng thấp (360p, 480p), nếu muốn xem rõ nét thì chọn chất lượng cao (720p, 1080p).
- Hỗ trợ xem phim trên hầu hết các dòng điện thoại thông minh như Iphone, Ipad, Android, Lumia ...
- Click vào nút "Download" để tải phim về máy hoặc dùng phần mềm IDM để download.
- Click vào nút "Báo lỗi" nếu như không xem được phim để chúng tôi có thể khắc phục trong thời gian sớm nhất.
- Chúc các bạn xem phim vui vẻ tại ZPhim.com!
Bác Sĩ Xứ Lạ - Doctor Stranger | Tập 2c - Server Google
Top xem nhiều
-
Ba Chị EmThree Sisters2010 67,514 1
-
Cuộc Sống Tuyệt VờiLife Is Beautiful2010 57,432 2
-
Ông TrùmThe Street King1999 56,986 3
-
Người Phụ Nữ Tuyệt VờiDaring Women2011 58,494 4
-
Đức Vua Và TôiThe King And I2007 54,165 5
-
Nữ Hoàng Tháng 5May Queen2012 46,495 6
-
Gia Đình Là Số 1Unstoppable High Kick2006 45,836 7
-
Lửa Hận Tình ThùYellow Boots2012 47,857 8
-
Hoàng Cung Dậy SóngDong Yi2010 39,426 9
-
Vinh Quang Gia TộcFamily's Honor2008 35,370 10

markdown:
- Nhấn phím F5 hoặc Shift+F5 để tải lại trang nếu đợi quá lâu.
- Chọn server khác để xem phim nếu như phim bị lỗi.
- Nếu mạng yếu thì nên chọn phim chất lượng thấp (360p, 480p), nếu muốn xem rõ nét thì chọn chất lượng cao (720p, 1080p).
- Hỗ trợ xem phim trên hầu hết các dòng điện thoại thông minh như Iphone, Ipad, Android, Lumia ...
- Click vào nút "Download" để tải phim về máy hoặc dùng phần mềm IDM để download.
- Click vào nút "Báo lỗi" nếu như không xem được phim để chúng tôi có thể khắc phục trong thời gian sớm nhất.
- Chúc các bạn xem phim vui vẻ tại ZPhim.com!
[1a](/xem-phim-bac-si-xu-la-425319) [1b](/xem-phim-bac-si-xu-la-425320) [1c](/xem-phim-bac-si-xu-la-425321) [1d](/xem-phim-bac-si-xu-la-425322) [1e](/xem-phim-bac-si-xu-la-425323) [2a](/xem-phim-bac-si-xu-la-425324) [2b](/xem-phim-bac-si-xu-la-425325) [2c](/xem-phim-bac-si-xu-la-425326) [2d](/xem-phim-bac-si-xu-la-425327) [2e](/xem-phim-bac-si-xu-la-425328) [3a](/xem-phim-bac-si-xu-la-425329) [3b](/xem-phim-bac-si-xu-la-425330) [3c](/xem-phim-bac-si-xu-la-425331) [3d](/xem-phim-bac-si-xu-la-425332) [3e](/xem-phim-bac-si-xu-la-425333) [4a](/xem-phim-bac-si-xu-la-425334) [4b](/xem-phim-bac-si-xu-la-425335) [4c](/xem-phim-bac-si-xu-la-425336) [4d](/xem-phim-bac-si-xu-la-425337) [4e](/xem-phim-bac-si-xu-la-425338) [5a](/xem-phim-bac-si-xu-la-425339) [5b](/xem-phim-bac-si-xu-la-425340) [5c](/xem-phim-bac-si-xu-la-425341) [5d](/xem-phim-bac-si-xu-la-425342) [5e](/xem-phim-bac-si-xu-la-425343) [6a](/xem-phim-bac-si-xu-la-425344) [6b](/xem-phim-bac-si-xu-la-425345) [6c](/xem-phim-bac-si-xu-la-425346) [6d](/xem-phim-bac-si-xu-la-425347) [6e](/xem-phim-bac-si-xu-la-425348) [7a](/xem-phim-bac-si-xu-la-425349) [7b](/xem-phim-bac-si-xu-la-425350) [7c](/xem-phim-bac-si-xu-la-425351) [7d](/xem-phim-bac-si-xu-la-425352) [7e](/xem-phim-bac-si-xu-la-425353) [8a](/xem-phim-bac-si-xu-la-425354) [8b](/xem-phim-bac-si-xu-la-425355) [8c](/xem-phim-bac-si-xu-la-425356) [8d](/xem-phim-bac-si-xu-la-425357) [8e](/xem-phim-bac-si-xu-la-425358) [9a](/xem-phim-bac-si-xu-la-425359) [9b](/xem-phim-bac-si-xu-la-425360) [9c](/xem-phim-bac-si-xu-la-425361) [9d](/xem-phim-bac-si-xu-la-425362) [9e](/xem-phim-bac-si-xu-la-425363) [10a](/xem-phim-bac-si-xu-la-425364) [10b](/xem-phim-bac-si-xu-la-425365) [10c](/xem-phim-bac-si-xu-la-425366) [10d](/xem-phim-bac-si-xu-la-425367) [10e](/xem-phim-bac-si-xu-la-425368) [11a](/xem-phim-bac-si-xu-la-425369) [11b](/xem-phim-bac-si-xu-la-425370) [11c](/xem-phim-bac-si-xu-la-425371) [11d](/xem-phim-bac-si-xu-la-425372) [11e](/xem-phim-bac-si-xu-la-425373) [12a](/xem-phim-bac-si-xu-la-425374) [12b](/xem-phim-bac-si-xu-la-425375) [12c](/xem-phim-bac-si-xu-la-425376) [12d](/xem-phim-bac-si-xu-la-425377) [12e](/xem-phim-bac-si-xu-la-425378) [13a](/xem-phim-bac-si-xu-la-425379) [13b](/xem-phim-bac-si-xu-la-425380) [13c](/xem-phim-bac-si-xu-la-425381) [13d](/xem-phim-bac-si-xu-la-425382) [13e](/xem-phim-bac-si-xu-la-425383) [14a](/xem-phim-bac-si-xu-la-425384) [14b](/xem-phim-bac-si-xu-la-425385) [14c](/xem-phim-bac-si-xu-la-425386) [14d](/xem-phim-bac-si-xu-la-425387) [14e](/xem-phim-bac-si-xu-la-425388) [15a](/xem-phim-bac-si-xu-la-425389) [15b](/xem-phim-bac-si-xu-la-425390) [15c](/xem-phim-bac-si-xu-la-425391) [15d](/xem-phim-bac-si-xu-la-425392) [15e](/xem-phim-bac-si-xu-la-425393) [16a](/xem-phim-bac-si-xu-la-425394) [16b](/xem-phim-bac-si-xu-la-425395) [16c](/xem-phim-bac-si-xu-la-425396) [16d](/xem-phim-bac-si-xu-la-425397) [16e](/xem-phim-bac-si-xu-la-425398) [17a](/xem-phim-bac-si-xu-la-425399) [17b](/xem-phim-bac-si-xu-la-425400) [17c](/xem-phim-bac-si-xu-la-425401) [17d](/xem-phim-bac-si-xu-la-425402) [17e](/xem-phim-bac-si-xu-la-425403) [18a](/xem-phim-bac-si-xu-la-425404) [18b](/xem-phim-bac-si-xu-la-425405) [18c](/xem-phim-bac-si-xu-la-425406) [18d](/xem-phim-bac-si-xu-la-425407) [18e](/xem-phim-bac-si-xu-la-425408) [19a](/xem-phim-bac-si-xu-la-425409) [19b](/xem-phim-bac-si-xu-la-425410) [19c](/xem-phim-bac-si-xu-la-425411) [19d](/xem-phim-bac-si-xu-la-425412) [19e](/xem-phim-bac-si-xu-la-425413) [20a](/xem-phim-bac-si-xu-la-425414) [20b](/xem-phim-bac-si-xu-la-425415) [20c](/xem-phim-bac-si-xu-la-425416) [20d](/xem-phim-bac-si-xu-la-425417) [20e-End](/xem-phim-bac-si-xu-la-425418)
# Bác Sĩ Xứ Lạ - Doctor Stranger | Tập 2c - Server Google
[Xem thêm](/phim-bac-si-xu-la-10870)
## Top xem nhiều
-
### Ba Chị EmThree Sisters
-
### Cuộc Sống Tuyệt VờiLife Is Beautiful
-
### Ông TrùmThe Street King
-
### Người Phụ Nữ Tuyệt VờiDaring Women
-
### Đức Vua Và TôiThe King And I
-
### Nữ Hoàng Tháng 5May Queen
-
### Gia Đình Là Số 1Unstoppable High Kick
-
### Lửa Hận Tình ThùYellow Boots
-
### Hoàng Cung Dậy SóngDong Yi
-
### Vinh Quang Gia TộcFamily's Honor


text:
- Nhấn phím F5 hoặc Shift+F5 để tải lại trang nếu đợi quá lâu.
- Chọn server khác để xem phim nếu như phim bị lỗi.
- Nếu mạng yếu thì nên chọn phim chất lượng thấp (360p, 480p), nếu muốn xem rõ nét thì chọn chất lượng cao (720p, 1080p).
- Hỗ trợ xem phim trên hầu hết các dòng điện thoại thông minh như Iphone, Ipad, Android, Lumia ...
- Click vào nút "Download" để tải phim về máy hoặc dùng phần mềm IDM để download.
- Click vào nút "Báo lỗi" nếu như không xem được phim để chúng tôi có thể khắc phục trong thời gian sớm nhất.
- Chúc các bạn xem phim vui vẻ tại ZPhim.com!
Bản Tình Ca Buồn - Sad Love Song | Tập 1A - Server Google
Top xem nhiều
-
Ba Chị EmThree Sisters2010 67,514 1
-
Cuộc Sống Tuyệt VờiLife Is Beautiful2010 57,432 2
-
Ông TrùmThe Street King1999 56,986 3
-
Người Phụ Nữ Tuyệt VờiDaring Women2011 58,494 4
-
Đức Vua Và TôiThe King And I2007 54,165 5
-
Nữ Hoàng Tháng 5May Queen2012 46,495 6
-
Gia Đình Là Số 1Unstoppable High Kick2006 45,836 7
-
Lửa Hận Tình ThùYellow Boots2012 47,857 8
-
Hoàng Cung Dậy SóngDong Yi2010 39,426 9
-
Vinh Quang Gia TộcFamily's Honor2008 35,370 10

markdown:
- Nhấn phím F5 hoặc Shift+F5 để tải lại trang nếu đợi quá lâu.
- Chọn server khác để xem phim nếu như phim bị lỗi.
- Nếu mạng yếu thì nên chọn phim chất lượng thấp (360p, 480p), nếu muốn xem rõ nét thì chọn chất lượng cao (720p, 1080p).
- Hỗ trợ xem phim trên hầu hết các dòng điện thoại thông minh như Iphone, Ipad, Android, Lumia ...
- Click vào nút "Download" để tải phim về máy hoặc dùng phần mềm IDM để download.
- Click vào nút "Báo lỗi" nếu như không xem được phim để chúng tôi có thể khắc phục trong thời gian sớm nhất.
- Chúc các bạn xem phim vui vẻ tại ZPhim.com!
[1A](/xem-phim-ban-tinh-ca-buon-92069) [1B](/xem-phim-ban-tinh-ca-buon-92070) [1C](/xem-phim-ban-tinh-ca-buon-92071) [2A](/xem-phim-ban-tinh-ca-buon-92072) [2B](/xem-phim-ban-tinh-ca-buon-92073) [2C](/xem-phim-ban-tinh-ca-buon-92074) [3A](/xem-phim-ban-tinh-ca-buon-92075) [3B](/xem-phim-ban-tinh-ca-buon-92076) [3C](/xem-phim-ban-tinh-ca-buon-92077) [4A](/xem-phim-ban-tinh-ca-buon-92078) [4B](/xem-phim-ban-tinh-ca-buon-92079) [4C](/xem-phim-ban-tinh-ca-buon-92080) [5A](/xem-phim-ban-tinh-ca-buon-92081) [5B](/xem-phim-ban-tinh-ca-buon-92082) [5C](/xem-phim-ban-tinh-ca-buon-92083) [6A](/xem-phim-ban-tinh-ca-buon-92084) [6B](/xem-phim-ban-tinh-ca-buon-92085) [6C](/xem-phim-ban-tinh-ca-buon-92086) [7A](/xem-phim-ban-tinh-ca-buon-92087) [7B](/xem-phim-ban-tinh-ca-buon-92088) [7C](/xem-phim-ban-tinh-ca-buon-92089) [8A](/xem-phim-ban-tinh-ca-buon-92090) [8B](/xem-phim-ban-tinh-ca-buon-92091) [8C](/xem-phim-ban-tinh-ca-buon-92092) [9A](/xem-phim-ban-tinh-ca-buon-92093) [9B](/xem-phim-ban-tinh-ca-buon-92094) [9C](/xem-phim-ban-tinh-ca-buon-92095) [10](/xem-phim-ban-tinh-ca-buon-92096) [11A](/xem-phim-ban-tinh-ca-buon-92097) [11B](/xem-phim-ban-tinh-ca-buon-92098) [11C](/xem-phim-ban-tinh-ca-buon-92099) [12A](/xem-phim-ban-tinh-ca-buon-92100) [12B](/xem-phim-ban-tinh-ca-buon-92101) [12C](/xem-phim-ban-tinh-ca-buon-92102) [13A](/xem-phim-ban-tinh-ca-buon-92103) [13B](/xem-phim-ban-tinh-ca-buon-92104) [13C](/xem-phim-ban-tinh-ca-buon-92105) [14A](/xem-phim-ban-tinh-ca-buon-92106) [14B](/xem-phim-ban-tinh-ca-buon-92107) [14C](/xem-phim-ban-tinh-ca-buon-92108) [15A](/xem-phim-ban-tinh-ca-buon-92109) [15B](/xem-phim-ban-tinh-ca-buon-92110) [15C](/xem-phim-ban-tinh-ca-buon-92111) [16A](/xem-phim-ban-tinh-ca-buon-92112) [16B](/xem-phim-ban-tinh-ca-buon-92113) [16C](/xem-phim-ban-tinh-ca-buon-92114) [17A](/xem-phim-ban-tinh-ca-buon-92115) [17B](/xem-phim-ban-tinh-ca-buon-92116) [17C](/xem-phim-ban-tinh-ca-buon-92117) [18A](/xem-phim-ban-tinh-ca-buon-92118) [18B](/xem-phim-ban-tinh-ca-buon-92119) [18C](/xem-phim-ban-tinh-ca-buon-92120) [19A](/xem-phim-ban-tinh-ca-buon-92121) [19B](/xem-phim-ban-tinh-ca-buon-92122) [19C](/xem-phim-ban-tinh-ca-buon-92123) [20A](/xem-phim-ban-tinh-ca-buon-92124) [20B](/xem-phim-ban-tinh-ca-buon-92125) [20C-End](/xem-phim-ban-tinh-ca-buon-92126) [1](/xem-phim-ban-tinh-ca-buon-92127) [2](/xem-phim-ban-tinh-ca-buon-92128) [3](/xem-phim-ban-tinh-ca-buon-92129) [4](/xem-phim-ban-tinh-ca-buon-92130) [5](/xem-phim-ban-tinh-ca-buon-92131) [6](/xem-phim-ban-tinh-ca-buon-92132) [7](/xem-phim-ban-tinh-ca-buon-92133) [8](/xem-phim-ban-tinh-ca-buon-92134) [9](/xem-phim-ban-tinh-ca-buon-92135) [10](/xem-phim-ban-tinh-ca-buon-92136) [11](/xem-phim-ban-tinh-ca-buon-92137) [12](/xem-phim-ban-tinh-ca-buon-92138) [13](/xem-phim-ban-tinh-ca-buon-92139) [14](/xem-phim-ban-tinh-ca-buon-92140) [15](/xem-phim-ban-tinh-ca-buon-92141) [16](/xem-phim-ban-tinh-ca-buon-92142) [17](/xem-phim-ban-tinh-ca-buon-92143) [18](/xem-phim-ban-tinh-ca-buon-92144) [19](/xem-phim-ban-tinh-ca-buon-92145) [20-End](/xem-phim-ban-tinh-ca-buon-92146)
# Bản Tình Ca Buồn - Sad Love Song | Tập 1A - Server Google
[Xem thêm](/phim-ban-tinh-ca-buon-5324)
## Top xem nhiều
-
### Ba Chị EmThree Sisters
-
### Cuộc Sống Tuyệt VờiLife Is Beautiful
-
### Ông TrùmThe Street King
-
### Người Phụ Nữ Tuyệt VờiDaring Women
-
### Đức Vua Và TôiThe King And I
-
### Nữ Hoàng Tháng 5May Queen
-
### Gia Đình Là Số 1Unstoppable High Kick
-
### Lửa Hận Tình ThùYellow Boots
-
### Hoàng Cung Dậy SóngDong Yi
-
### Vinh Quang Gia TộcFamily's Honor


text:
- Nhấn phím F5 hoặc Shift+F5 để tải lại trang nếu đợi quá lâu.
- Chọn server khác để xem phim nếu như phim bị lỗi.
- Nếu mạng yếu thì nên chọn phim chất lượng thấp (360p, 480p), nếu muốn xem rõ nét thì chọn chất lượng cao (720p, 1080p).
- Hỗ trợ xem phim trên hầu hết các dòng điện thoại thông minh như Iphone, Ipad, Android, Lumia ...
- Click vào nút "Download" để tải phim về máy hoặc dùng phần mềm IDM để download.
- Click vào nút "Báo lỗi" nếu như không xem được phim để chúng tôi có thể khắc phục trong thời gian sớm nhất.
- Chúc các bạn xem phim vui vẻ tại ZPhim.com!
Docs:1a1b2a2b3a3b4a4b5a5b6a6b7a7b8910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
Bảo Bối Thần Kỳ 1 - Pokemon Season 1 | Tập 14 - Server Docs
Top xem nhiều
-
Siêu Người Máy Biến HìnhTransformers: Energon2004 76,056 1
-
Bảy Viên Ngọc RồngDragon Ball Z1989 123,714 2
-
Sứ Giả Thần ChếtBleach2004 80,604 3
-
Công Chúa Sinh ĐôiTwin Princesses of the Wonder Planet2005 37,307 4
-
Naruto Phần 1Naruto2002 75,888 5
-
Siêu Nhân Phi LongKamen Rider Ryuki2002 45,517 6
-
Khuyển Dạ XoaInuYasha2000 68,791 7
-
Bảo Bối Thần Kỳ 15Pokemon Season 152011 44,527 8
-
Tình Dục Tuổi TeenSeikon no Qwaser2012 51,365 9
-
Vua Trò Chơi 2Yu-Gi-Oh! GX2004 59,043 10

markdown:
- Nhấn phím F5 hoặc Shift+F5 để tải lại trang nếu đợi quá lâu.
- Chọn server khác để xem phim nếu như phim bị lỗi.
- Nếu mạng yếu thì nên chọn phim chất lượng thấp (360p, 480p), nếu muốn xem rõ nét thì chọn chất lượng cao (720p, 1080p).
- Hỗ trợ xem phim trên hầu hết các dòng điện thoại thông minh như Iphone, Ipad, Android, Lumia ...
- Click vào nút "Download" để tải phim về máy hoặc dùng phần mềm IDM để download.
- Click vào nút "Báo lỗi" nếu như không xem được phim để chúng tôi có thể khắc phục trong thời gian sớm nhất.
- Chúc các bạn xem phim vui vẻ tại ZPhim.com!
[1a](/xem-phim-bao-boi-than-ky-1-389754) [1b](/xem-phim-bao-boi-than-ky-1-389755) [2a](/xem-phim-bao-boi-than-ky-1-389756) [2b](/xem-phim-bao-boi-than-ky-1-389757) [3a](/xem-phim-bao-boi-than-ky-1-389758) [3b](/xem-phim-bao-boi-than-ky-1-389759) [4a](/xem-phim-bao-boi-than-ky-1-389760) [4b](/xem-phim-bao-boi-than-ky-1-389761) [5a](/xem-phim-bao-boi-than-ky-1-389762) [5b](/xem-phim-bao-boi-than-ky-1-389763) [6a](/xem-phim-bao-boi-than-ky-1-389764) [6b](/xem-phim-bao-boi-than-ky-1-389765) [7a](/xem-phim-bao-boi-than-ky-1-389766) [7b](/xem-phim-bao-boi-than-ky-1-389767) [8](/xem-phim-bao-boi-than-ky-1-389768) [9](/xem-phim-bao-boi-than-ky-1-389769) [10](/xem-phim-bao-boi-than-ky-1-389770) [11](/xem-phim-bao-boi-than-ky-1-389771) [12](/xem-phim-bao-boi-than-ky-1-389772) [13](/xem-phim-bao-boi-than-ky-1-389773) [14](/xem-phim-bao-boi-than-ky-1-389774) [15](/xem-phim-bao-boi-than-ky-1-389775) [16](/xem-phim-bao-boi-than-ky-1-389776) [17](/xem-phim-bao-boi-than-ky-1-389777) [18](/xem-phim-bao-boi-than-ky-1-389778) [19](/xem-phim-bao-boi-than-ky-1-389779) [31](/xem-phim-bao-boi-than-ky-1-389791) [32](/xem-phim-bao-boi-than-ky-1-389792) [33](/xem-phim-bao-boi-than-ky-1-389793) [36](/xem-phim-bao-boi-than-ky-1-389796) [37](/xem-phim-bao-boi-than-ky-1-389797) [38](/xem-phim-bao-boi-than-ky-1-389798) [41](/xem-phim-bao-boi-than-ky-1-389801) [42](/xem-phim-bao-boi-than-ky-1-389802) [43](/xem-phim-bao-boi-than-ky-1-389803) [44](/xem-phim-bao-boi-than-ky-1-389804) [45](/xem-phim-bao-boi-than-ky-1-389805) [46](/xem-phim-bao-boi-than-ky-1-389806) [47](/xem-phim-bao-boi-than-ky-1-389807) [48](/xem-phim-bao-boi-than-ky-1-389808) [49](/xem-phim-bao-boi-than-ky-1-389809) [50](/xem-phim-bao-boi-than-ky-1-389810) [51](/xem-phim-bao-boi-than-ky-1-389811) [52](/xem-phim-bao-boi-than-ky-1-389812) [53](/xem-phim-bao-boi-than-ky-1-389813) [56](/xem-phim-bao-boi-than-ky-1-389816) [58](/xem-phim-bao-boi-than-ky-1-389818) [61](/xem-phim-bao-boi-than-ky-1-389821) [63](/xem-phim-bao-boi-than-ky-1-389823) [67](/xem-phim-bao-boi-than-ky-1-389827) [69](/xem-phim-bao-boi-than-ky-1-389829) [70](/xem-phim-bao-boi-than-ky-1-389830) [71](/xem-phim-bao-boi-than-ky-1-389831) [72](/xem-phim-bao-boi-than-ky-1-389832) [73](/xem-phim-bao-boi-than-ky-1-389833) [77](/xem-phim-bao-boi-than-ky-1-389837) [78](/xem-phim-bao-boi-than-ky-1-389838) [79](/xem-phim-bao-boi-than-ky-1-389839) [81](/xem-phim-bao-boi-than-ky-1-389841)
Docs:
[1a](/xem-phim-bao-boi-than-ky-1-389843) [1b](/xem-phim-bao-boi-than-ky-1-389844) [2a](/xem-phim-bao-boi-than-ky-1-389845) [2b](/xem-phim-bao-boi-than-ky-1-389846) [3a](/xem-phim-bao-boi-than-ky-1-389847) [3b](/xem-phim-bao-boi-than-ky-1-389848) [4a](/xem-phim-bao-boi-than-ky-1-389849) [4b](/xem-phim-bao-boi-than-ky-1-389850) [5a](/xem-phim-bao-boi-than-ky-1-389851) [5b](/xem-phim-bao-boi-than-ky-1-389852) [6a](/xem-phim-bao-boi-than-ky-1-389853) [6b](/xem-phim-bao-boi-than-ky-1-389854) [7a](/xem-phim-bao-boi-than-ky-1-389855) [7b](/xem-phim-bao-boi-than-ky-1-389856) [8](/xem-phim-bao-boi-than-ky-1-389857) [9](/xem-phim-bao-boi-than-ky-1-389858) [10](/xem-phim-bao-boi-than-ky-1-389859) [11](/xem-phim-bao-boi-than-ky-1-389860) [12](/xem-phim-bao-boi-than-ky-1-389861) [13](/xem-phim-bao-boi-than-ky-1-389862) [14](/xem-phim-bao-boi-than-ky-1-389863) [15](/xem-phim-bao-boi-than-ky-1-389864) [16](/xem-phim-bao-boi-than-ky-1-389865) [17](/xem-phim-bao-boi-than-ky-1-389866) [18](/xem-phim-bao-boi-than-ky-1-389867) [19](/xem-phim-bao-boi-than-ky-1-389868) [20](/xem-phim-bao-boi-than-ky-1-389869) [21](/xem-phim-bao-boi-than-ky-1-389870) [22](/xem-phim-bao-boi-than-ky-1-389871) [23](/xem-phim-bao-boi-than-ky-1-389872) [24](/xem-phim-bao-boi-than-ky-1-389873) [25](/xem-phim-bao-boi-than-ky-1-389874) [26](/xem-phim-bao-boi-than-ky-1-389875) [27](/xem-phim-bao-boi-than-ky-1-389876) [28](/xem-phim-bao-boi-than-ky-1-389877) [29](/xem-phim-bao-boi-than-ky-1-389878) [30](/xem-phim-bao-boi-than-ky-1-389879) [31](/xem-phim-bao-boi-than-ky-1-389880) [32](/xem-phim-bao-boi-than-ky-1-389881) [33](/xem-phim-bao-boi-than-ky-1-389882) [34](/xem-phim-bao-boi-than-ky-1-389883) [35](/xem-phim-bao-boi-than-ky-1-389884) [36](/xem-phim-bao-boi-than-ky-1-389885) [37](/xem-phim-bao-boi-than-ky-1-389886) [38](/xem-phim-bao-boi-than-ky-1-389887) [39](/xem-phim-bao-boi-than-ky-1-389888) [40](/xem-phim-bao-boi-than-ky-1-389889) [41](/xem-phim-bao-boi-than-ky-1-389890) [42](/xem-phim-bao-boi-than-ky-1-389891) [43](/xem-phim-bao-boi-than-ky-1-389892) [44](/xem-phim-bao-boi-than-ky-1-389893) [45](/xem-phim-bao-boi-than-ky-1-389894) [46](/xem-phim-bao-boi-than-ky-1-389895) [47](/xem-phim-bao-boi-than-ky-1-389896) [48](/xem-phim-bao-boi-than-ky-1-389897) [49](/xem-phim-bao-boi-than-ky-1-389898) [50](/xem-phim-bao-boi-than-ky-1-389899) [51](/xem-phim-bao-boi-than-ky-1-389900) [52](/xem-phim-bao-boi-than-ky-1-389901) [53](/xem-phim-bao-boi-than-ky-1-389902) [54](/xem-phim-bao-boi-than-ky-1-389903) [55](/xem-phim-bao-boi-than-ky-1-389904) [56](/xem-phim-bao-boi-than-ky-1-389905) [57](/xem-phim-bao-boi-than-ky-1-389906) [58](/xem-phim-bao-boi-than-ky-1-389907) [59](/xem-phim-bao-boi-than-ky-1-389908) [60](/xem-phim-bao-boi-than-ky-1-389909) [61](/xem-phim-bao-boi-than-ky-1-389910) [62](/xem-phim-bao-boi-than-ky-1-389911) [63](/xem-phim-bao-boi-than-ky-1-389912) [64](/xem-phim-bao-boi-than-ky-1-389913) [65](/xem-phim-bao-boi-than-ky-1-389914) [66](/xem-phim-bao-boi-than-ky-1-389915) [67](/xem-phim-bao-boi-than-ky-1-389916) [68](/xem-phim-bao-boi-than-ky-1-389917) [69](/xem-phim-bao-boi-than-ky-1-389918) [70](/xem-phim-bao-boi-than-ky-1-389919) [71](/xem-phim-bao-boi-than-ky-1-389920) [72](/xem-phim-bao-boi-than-ky-1-389921) [73](/xem-phim-bao-boi-than-ky-1-389922) [74](/xem-phim-bao-boi-than-ky-1-389923) [75](/xem-phim-bao-boi-than-ky-1-389924) [76](/xem-phim-bao-boi-than-ky-1-389925) [77](/xem-phim-bao-boi-than-ky-1-389926) [78](/xem-phim-bao-boi-than-ky-1-389927) [79](/xem-phim-bao-boi-than-ky-1-389928) [80](/xem-phim-bao-boi-than-ky-1-389929) [81](/xem-phim-bao-boi-than-ky-1-389930) [82](/xem-phim-bao-boi-than-ky-1-389931)
# Bảo Bối Thần Kỳ 1 - Pokemon Season 1 | Tập 14 - Server Docs
[Xem thêm](/phim-bao-boi-than-ky-1-6600)
## Top xem nhiều
-
### Siêu Người Máy Biến HìnhTransformers: Energon
-
### Bảy Viên Ngọc RồngDragon Ball Z
-
### Sứ Giả Thần ChếtBleach
-
### Công Chúa Sinh ĐôiTwin Princesses of the Wonder Planet
-
### Naruto Phần 1Naruto
-
### Siêu Nhân Phi LongKamen Rider Ryuki
-
### Khuyển Dạ XoaInuYasha
-
### Bảo Bối Thần Kỳ 15Pokemon Season 15
-
### Tình Dục Tuổi TeenSeikon no Qwaser
-
### Vua Trò Chơi 2Yu-Gi-Oh! GX