trait A
{
public function share($item)
{
return "share this item" + $item;
}
}
// Use Shareable Trait in other class
class B
{
public function share($item){
return 1;
}
use A;
}
$post = new Post();
echo $post->share($item);
Bạn ơi cho mình hỏi chút, việc sử dụng trait là sử dụng bắt buộc ở đầu hay có thể sử dụng bất kỳ đâu trong lớp, nếu mình sử dụng trait ở sau 1 hàm giống trong trait, thì hàm nào sẽ ghi đè hàm nào nhỉ ( ví dụ mình khai báo hàm A() nhưng trước use Trait và trong trait cx có hàm A() thì lớp sẽ gọi đến hàm nào )
Cám ơn @thangtd90 và @quocnb , nói : 0x1ffff chính là số nguyên liền trước của 0x20000 là mình hiểu liền rồi.
Bên dưới bạn @thangtd90 còn giải thích kỹ hơn:
Mình lại được bổ sung thêm kiến thức nữa. Mình cám ơn b nhé
Lúc này phép toán (1 + Math.random()) * 0x10000 sẽ cho ra một kết quả trong đoạn 0x10000 <= x < 0x20000
Dùng thêm hàm Math.floor() nữa bạn sẽ có một số nguyên trong khoảng 0x10000 <= y <= 0x1ffff
Sao đang từ : 0x10000 <= x < 0x20000 qua hàm Math.floor() lại ra được ==> 0x10000 <= y <= 0x1ffff
tại sao từ 20000 chuyển thành 1ffff bằng cách nào vậy bạn?
commit thì em viết chữ gì vào cũng được. Cái đó để đưa code lên github thôi. Sau khi đưa lên thì em phải đợi trang web build trong khoảng 1 phút. Anh k rõ không hiển thị là không hiển thị ảnh hay là k hiển thị cái gì. Có thể đường dẫn ảnh bị sai khi đưa lên github. Em chú ý xem lại từng bước anh đã hướng dẫn. Không hề có bước nào anh không quay video cả. Nếu trang web bị lỗi javascript thì em bật F12 để debug xem sao. Nếu những cái cơ bản này em chưa rõ thì em khả năng phải học 1 khóa về html, css, javascript đi đã nhé.
Nếu có thể thì bạn nên sửa phần giới thiệu về semantic tag thành non-semantic tag. Như vậy follow sẽ chính xác hơn. Bài sau bạn có thể viết lại về Semantic tag và lấy ví dụ về các loại tag semantic.
Good luck!
Bài viết của bạn không sai nhưng mình xin góp ý chút. Nếu nói đến Semantic tag thì nên lấy ví dụ rõ ràng về loại tag này để người đọc có thể hiểu rõ hơn.
Còn đối với các tag dùng để phân chia layout như bạn viết bên trên thì lại thuộc về loại tag non-semantic. Bạn viết như hiện tại sẽ khiến người khác dễ dàng hiểu nhầm các loại tag HTML được nói tới bên trên là semantic tag.
Cảm ơn bạn đã góp ý, thực ra mình cũng nhận ra điểm mạnh của mình ko phải viết và dịch về thể loại này, có lẽ mình sẽ tập trung chia sẻ về kỹ thuật nhiều hơn.
THẢO LUẬN
override (bow)
@buihieubthc2rb Lí do hay dựa vào cơ chế gì nó ưu tiên thế chị
(bow)
Nó ưu tiên hàm ở trong class hơn nhé => kết quả 1
không , ý là dư lày lày
nó gọi cái thằng A hay B nhỉ :v
ý bạn là như này phải không nhỉ https://stackoverflow.com/questions/11939166/how-to-override-trait-function-and-call-it-from-the-overridden-function
Bạn ơi cho mình hỏi chút, việc sử dụng trait là sử dụng bắt buộc ở đầu hay có thể sử dụng bất kỳ đâu trong lớp, nếu mình sử dụng trait ở sau 1 hàm giống trong trait, thì hàm nào sẽ ghi đè hàm nào nhỉ ( ví dụ mình khai báo hàm A() nhưng trước use Trait và trong trait cx có hàm A() thì lớp sẽ gọi đến hàm nào )
Em mà đưa ra thêm được một số ứng dụng thực tiễn vào dự án hoặc kinh nghiệm thực tế thì hay hơn.
Cám ơn @thangtd90 và @quocnb , nói :
0x1ffff chính là số nguyên liền trước của 0x20000là mình hiểu liền rồi. Bên dưới bạn @thangtd90 còn giải thích kỹ hơn:Mình lại được bổ sung thêm kiến thức nữa. Mình cám ơn b nhé
@wiliamfeng Bạn mở console của Google Chrome lên chẳng hạn, xong gõ vào sẽ thấy
0x20000có giá trị là131072, còn0x1ffffcó giá trị là131071.Cụ thể thì
0x20000 =2∗164=131072
0x1ffff =164+15∗163+15∗162+15∗161+15∗160=131071
@wiliamfeng Bạn chú ý đây đang là tính toán ở hệ
16nhéNhư bạn @quocnb nói thì
0x1ffffchính là số nguyên liền trước của0x20000đấy.@wiliamfeng
Vì
0x1fffflà số nguyên liền trước của0x20000.x < 0x20000nêny = floor(x) <= 0x1ffffđó bạnBài viết mang tính thả thính :v. Admin có hảo tâm cho xin Doc ạ! Thanks nhìu nhìu , mail: tinsqt@gmail.com
Bạn @thangtd90 cho mình hỏi đoạn này:
Sao đang từ : 0x10000 <= x < 0x20000 qua hàm Math.floor() lại ra được ==> 0x10000 <= y <= 0x1ffff tại sao từ 20000 chuyển thành 1ffff bằng cách nào vậy bạn?
Xin cám ơn mọi người nhiều ạ
commit thì em viết chữ gì vào cũng được. Cái đó để đưa code lên github thôi. Sau khi đưa lên thì em phải đợi trang web build trong khoảng 1 phút. Anh k rõ không hiển thị là không hiển thị ảnh hay là k hiển thị cái gì. Có thể đường dẫn ảnh bị sai khi đưa lên github. Em chú ý xem lại từng bước anh đã hướng dẫn. Không hề có bước nào anh không quay video cả. Nếu trang web bị lỗi javascript thì em bật F12 để debug xem sao. Nếu những cái cơ bản này em chưa rõ thì em khả năng phải học 1 khóa về html, css, javascript đi đã nhé.
Nếu có thể thì bạn nên sửa phần giới thiệu về semantic tag thành non-semantic tag. Như vậy follow sẽ chính xác hơn. Bài sau bạn có thể viết lại về Semantic tag và lấy ví dụ về các loại tag semantic. Good luck!
dạ vâng em cảm ơn góp ý của chị ạ !
Bài viết của bạn không sai nhưng mình xin góp ý chút. Nếu nói đến Semantic tag thì nên lấy ví dụ rõ ràng về loại tag này để người đọc có thể hiểu rõ hơn. Còn đối với các tag dùng để phân chia layout như bạn viết bên trên thì lại thuộc về loại tag non-semantic. Bạn viết như hiện tại sẽ khiến người khác dễ dàng hiểu nhầm các loại tag HTML được nói tới bên trên là semantic tag.
Cảm ơn bạn đã góp ý, thực ra mình cũng nhận ra điểm mạnh của mình ko phải viết và dịch về thể loại này, có lẽ mình sẽ tập trung chia sẻ về kỹ thuật nhiều hơn.