Bạn gọi ->
toán tử tìm kiếm mũi tên này được tìm thấy trong PHP là gì?
Đó là dấu trừ, dấu gạch ngang hoặc dấu gạch nối theo sau là dấu lớn hơn dấu (hoặc chevron phải).
Làm thế nào để bạn phát âm nó khi đọc mã lớn?
Bạn gọi ->
toán tử tìm kiếm mũi tên này được tìm thấy trong PHP là gì?
Đó là dấu trừ, dấu gạch ngang hoặc dấu gạch nối theo sau là dấu lớn hơn dấu (hoặc chevron phải).
Làm thế nào để bạn phát âm nó khi đọc mã lớn?
Câu trả lời:
Tên chính thức là "toán tử đối tượng" - T_OB DỰ_OPERATOR . Tôi gọi nó là "mũi tên".
T_DOUBLE_COLON
. Tôi sẽ +1 cho bạn khi tôi nhận được thêm một số phiếu bầu :)
$a->do()
"Phương pháp của A" và $a->thing
là "Điều tài sản của A", vì vậy nó tương đối.
T_PAAMAYIM_NEKUDOTAYIM
chính xác có nghĩa là "dấu hai chấm" trong tiếng Do Thái.
Tôi gọi nó là " phi tiêu "; như trong $Foo->bar()
: "Foo phi tiêu thanh"
Vì nhiều ngôn ngữ sử dụng "dấu chấm" như trong Foo.bar();
tôi muốn sử dụng một từ có một âm tiết. "Mũi tên" chỉ là quá dài! ;)
Vì PHP sử dụng .
"dấu chấm" để ghép nối (tại sao?) Tôi không thể nói "dấu chấm" một cách an toàn - nó có thể gây nhầm lẫn.
Thảo luận với đồng nghiệp một thời gian trước, chúng tôi quyết định "phi tiêu" là một từ tương tự đủ để "chấm" để chảy thoải mái, nhưng đủ khác biệt (ít nhất là khi chúng ta nói) để không bị nhầm lẫn với một "dấu chấm" nối liền .
Khi đọc to mã PHP, tôi không phát âm toán tử "->". Vì $db->prepare($query);
tôi chủ yếu nói "Db [tạm dừng ngắn] chuẩn bị truy vấn." Vì vậy, tôi đoán tôi nói nó như một dấu phẩy trong một câu thông thường.
Điều tương tự cũng xảy ra với Paamayim Nekudotayim ("::").
Khi đọc mã cho chính mình, tôi nghĩ về nó giống như một "thứ sở hữu".
Ví dụ:
x->value = y->value
sẽ đọc "giá trị của x bằng giá trị của y"
Thông thường, tôi sử dụng một số biến thể trên phương thức của @Tor Valamo ("phương pháp B của A" hoặc "Phương pháp B của A"), nhưng đôi khi tôi nói "dấu chấm". Ví dụ: "gọi A chấm B ()".
->
trong C / C ++, nơi nó có chức năng khác với toán tử chấm thực tế?
Nhà điều hành tài sản.
Khi đọc $a->b()
hoặc $a->b
nói to tôi chỉ cần nói "gọi b trên $ a obj" hoặc "get b from / in / of $ a"
Cá nhân tôi thích được tiết lộ bằng cách diễn đạt mã của mình bằng lời nói.
ví dụ:
$foo = new Foo();
echo $foo->bar
sẽ đọc như vậy:
echo (/ print) thuộc tính thanh của đối tượng foo.
Nó dài dòng và tốn nhiều thời gian hơn, nhưng tôi thấy nếu có lý do để tôi thể hiện mã của mình bằng lời nói thì có lẽ tôi cần phải rõ ràng về những gì tôi đang truyền đạt chính xác.
Mũi tên đơn có thể dễ dàng được gọi bằng lời như ý nghĩa của PHP OOP: Member. Vì vậy, đối với $a->var
bạn sẽ nói "Đối tượng var thành viên".
Khi đọc to mã, nó sẽ giúp đọc trước (tham khảo, xin lỗi) và biết những gì bạn thực sự có thể được đề cập đến. Chẳng hạn, hãy có một đoạn mã sau:
<?php
Class MyClass {
$foo = 0;
public function bar() {
return $this->foo;
}
}
$myobject = new MyClass();
$myobject->bar();
?>
Vì vậy, nếu tôi đọc to khối mã này như một minh chứng về mã, tôi sẽ nói điều này:
"Xác định lớp 'MyClass', dấu ngoặc mở. Biến 'foo' bằng 0, chấm dứt dòng. Xác định hàm công khai 'thanh' dấu ngoặc đóng mở, dấu ngoặc mở. Trả về biến thành viên 'foo' của đối tượng 'này', chấm dứt dòng Nẹp gần, nẹp sát. Khởi tạo thể hiện mới của 'MyClass' (không có đối số) làm đối tượng biến 'myobject', chấm dứt dòng. Gọi phương thức thành viên 'bar' của đối tượng 'myobject', chấm dứt dòng. "
Tuy nhiên, nếu tôi đang đọc to mã cho các sinh viên hoặc lập trình viên khác sao chép mà không có hình ảnh, thì tôi sẽ nói:
"Thẻ mở PHP (đầy đủ), dòng mới, thụt lề, Class MyClass open-brace, newline. Indent, ['Dollar-sign' | 'Object-Marker'] foo bằng 0, dấu chấm phẩy, dòng mới, dòng mới. dấu ngoặc đơn đóng, dấu ngoặc kép, dòng mới. Ấn định, trả về ['ký hiệu đô la' | 'Dấu hiệu đối tượng'] mũi tên này foo, dấu chấm phẩy, dòng mới. Đảo ngược, đóng dấu ngoặc kép, dòng mới, thụt lùi, đóng dấu , dòng mới, dòng mới. ['đô la ký' | 'Dấu hiệu đối tượng'] myobject bằng dấu ngoặc đơn đóng mở MyClass mới, dấu chấm phẩy, dòng mới. ['đô la ký' | 'Dấu đối tượng'] thanh mũi tên myobject đóng dấu ngoặc đơn, dấu chấm phẩy, dòng mới. Đảo ngược thụt lề, thẻ đóng PHP. "
Nơi bạn thấy ['ký hiệu đô la' | Marker Đánh dấu đối tượng '], chỉ cần chọn bất cứ điều gì bạn có xu hướng nói với' $ ', tôi chuyển đổi giữa hai người thường xuyên, chỉ phụ thuộc vào đối tượng của tôi.
Vì vậy, để tóm tắt, trong PHP, -> đề cập đến một thành viên của một đối tượng, có thể là một biến, một đối tượng khác hoặc một phương thức.
Nhà phát triển PHP cao cấp nơi tôi làm việc nói "mũi tên".
$A->B;
Khi anh ấy bảo tôi gõ như trên, anh ấy sẽ nói, "Dollar A mũi tên B" hoặc cho
$A->B();
"Dollar A mũi tên B parens."
Tôi sẽ làm như thế này:
//Instantiated object variable with the name mono call property name
$mono->name;
//Instantiated object variable with the name mono call method ship
$mono->ship();
Trong cuốn sách của tôi ( PHP Master của Lorna Mitchell), nó được gọi là toán tử đối tượng .
Tiếng Nhật có một hạt thuận tiện cho việc này, "không" (の). Nó là hạt sở hữu, có nghĩa đại khái là "liên quan đến thuật ngữ trước".
"Fred の badger" có nghĩa là "Fred's lửng".
Đó là một chặng đường dài để nói rằng ít nhất là về mặt tinh thần, và trong số những người hiểu tiếng Nhật, tôi có xu hướng phân biệt chúng bằng cách đọc chúng là:
$A->B(); // "Call $A's B."
C::D(); // "Call C の D."
Nhưng đọc cả hai như một "s" sở hữu cũng hoạt động, đối với người không nói tiếng Nhật. Bạn cũng có thể lật chúng và sử dụng "of", vì vậy "D of C" ... nhưng điều đó hơi khó xử và khó thực hiện khi bạn đọc nhanh vì nó phá vỡ dòng chảy tuyến tính của bạn.
Tuy nhiên, nếu tôi đang đọc chính tả, có lẽ khi ghép mã hóa và gợi ý nên gõ gì, tôi sẽ gọi các ký tự cụ thể là "dấu gạch ngang lớn hơn mũi tên" và "dấu hai chấm" (nếu tôi biết người tôi đang nói là một PHPophile, lần đầu tiên tôi có thể gọi đó là "dấu hai chấm paamayim nekudotayim", một phần vì nó là một trò đùa thú vị, một phần để ngăn họ "sửa" tôi).
->
là toán tử thuộc tính được sử dụng cho PHP trong chế độ hướng đối tượng.
user187291 đã trả lời câu hỏi không chủ quan, như đối với câu hỏi chủ quan, tôi nói "phụ". Ví dụ: tôi sẽ phát âm $x->y
là "x sub y" - "sub" trong ngữ cảnh này là viết tắt của "subscript". Điều này là thích hợp hơn cho ký hiệu mảng; $x['y']
Tôi cũng phát âm "x sub y". Thông thường khi đọc mã thành tiếng, tôi đang sử dụng các từ của mình để xác định một dòng mà nhà phát triển khác có thể nhìn thấy, vì vậy sự mơ hồ vẫn chưa trở thành vấn đề. Tôi tin rằng nguyên nhân là tôi xem các cấu trúc / đối tượng và mảng là "các bộ sưu tập" và các phần tử của chúng được ký hiệu như trong ký hiệu toán học.