Что называется «->» PHP-оператором и как вы это говорите при чтении кода вслух?

Что вы называете оператором поиска стрелок -> найденным в PHP?

Это знак минуса, тире или дефис, за которым следует знак больше (или правый шеврон).

Как вы произносите это при чтении кода вслух?

Related of "Что называется «->» PHP-оператором и как вы это говорите при чтении кода вслух?"

Официальное название – «оператор объекта» – T_OBJECT_OPERATOR . Я называю это «стрелкой».

Я называю это « дротик »; как в $Foo->bar() : "Foo dart bar"

Поскольку многие языки используют «точку», как в Foo.bar(); Я хотел использовать односложное слово. «Стрела» слишком затянута! 😉

Поскольку PHP использует . «точка» для конкатенации (почему?) Я не могу спокойно сказать «точка» – это может смутить.

Обсуждая с коллегой некоторое время назад, мы решили «дрочить» как слово, достаточно близкое к «точке», чтобы течь комфортно, но достаточно отчетливо (по крайней мере, когда мы говорим), чтобы не ошибиться с конкатенирующей «точкой», ,

При чтении PHP-кода вслух я не произношу оператора «->». Для $db->prepare($query); Я в основном говорю «Db [короткая пауза] подготовить запрос». Поэтому я думаю, что я говорю это как запятую в обычном предложении.

То же самое относится к Паамаим Некудотаим («::»).

Читая код для себя, я думаю, что это как «притяжательная вещь».

Например:

 x->value = y->value 

будет читать «значение x равно значению y»

Чаще всего я использую некоторые вариации метода @Tor Valamo («метод B метода A» или «метод A B»), но иногда я говорю «точка». Например, «назовите точку B ()».

Оператор недвижимости.

При чтении $a->b() или $a->b громкости я просто говорю «называть b на $ a obj» или «get b из / in / of $ a»

Возвращаясь к Cobol 'in', где вы сказали бы «Переместить 5 на b в a». Сегодня большинство языков квалифицируют вещи в другом направлении.

Но я все равно прочитал бы $a->b(); как «Вызов b в a».

 $a->b 

Я называю «param b of $ a».

 $a->b() 

Я называю «функцией b из $ a».

Мне лично нравится быть вербально выражающим мой код в устной форме.

например:

 $foo = new Foo(); echo $foo->bar 

будет читать как таковой:

echo (/ print) свойство bar объекта foo.

Это многословие и много времени, но я нахожу, что есть причина для того, чтобы я выражал свой код в устной форме, тогда мне, вероятно, нужно четко указать, что я точно сообщаю.

Единственная стрелка может быть легко передана в устной форме как то, что она означает для PHP OOP: Member. Итак, для $a->var вы бы сказали «Object a a var».

При чтении кода вслух он помогает читать вперед (справочная ссылка, извините), и знать, на что вы действительно можете ссылаться. Например, давайте получим следующий бит кода:

 <?php Class MyClass { $foo = 0; public function bar() { return $this->foo; } } $myobject = new MyClass(); $myobject->bar(); ?> 

Итак, если бы я прочитал вслух этот блок кода как демонстрацию кода, я бы сказал следующее:

«Определить класс« MyClass », open-brace. Переменная« foo »равна нулю, завершать строку. Определить открытую круглую скобку« открывать-закрыть », открывать-скобки. Возвращать переменную-член« foo »объекта« this », завершать строку Close-brace, close-brace. Создайте новый экземпляр «MyClass» (без аргументов) как переменный объект «myobject», завершите строку. Метод вызова «bar» объекта «myobject», завершите строку.

Однако, если бы я читал код вслух для других учеников или программистов для копирования без визуального, то я бы сказал:

«Открытый PHP-тег (полный), новая строка, отступ, класс MyClass open-brace, newline. Отступ, ['долларовый знак' | 'Объект-маркер'] foo равно 0, точка с запятой, новая строка, новая строка. закрывать круглые скобки, открывать скобки, новую строку.Отступ, вернуть ['знак доллара' | 'Объект-маркер'] эту стрелку foo, точку с запятой, новую строку. Обратный-отступ, close-brace, newline, reverse-indent, close-brace , newline, newline. ['dollar-sign' | 'Object-marker'] myobject равно новым скобкам MyClass с открытым концом, точкой с запятой, новой строкой. ['dollar-sign' | 'Object-marker'] myobject arrow bar open-close круглые скобки, точка с запятой, новая строка. Обратный отступ, тег закрытия PHP. "

Где вы видите «знак доллара» | «Объект-маркер»], просто выберите, какой вы склонны говорить за «$», я часто переключаюсь между ними, просто зависит от моей аудитории.

Итак, чтобы подвести итог, в PHP, -> относится к члену объекта, будь то переменная, другой объект или метод.

Старший разработчик PHP, где я работаю, говорит «стрелка».

 $A->B; 

Когда он говорит мне набрать выше, он скажет: «Доллар A стрелка B» или для

 $A->B(); 

«Доллар A стрелка B parens».

Я бы сделал это так:

 //Instantiated object variable with the name mono call property name $mono->name; //Instantiated object variable with the name mono call method ship $mono->ship(); 

В моей книге ( PHP Master by Lorna Mitchell) это называется оператором объекта .

Объект. Таким образом, $a->$b->$c будет «Объектом B объекта c».

-> – оператор свойств, используемый для PHP в объектно-ориентированном режиме.

Пользователь187291 ответил на не-субъективный вопрос, так как для субъективного, я говорю «sub». Например, я бы объявлял $x->y поскольку «x sub y» – «sub» в этом контексте является коротким для «индекса». Это более подходит для обозначения массива; $x['y'] Я также произношу «x sub y». Обычно, когда я читаю код вслух, я использую свои слова, чтобы определить линию, которую может видеть другой разработчик, поэтому неопределенность еще не стала проблемой. Я считаю, что причина в том, что я рассматриваю structs / objects и массивы как «коллекции», а их элементы индексируются как в математических обозначениях.

У японца есть удобная частица для этого, «нет» (の). Это притяжательная частица, означающая примерно «относящуюся к предыдущему термину».

«Фред の барсук» означает «барсук Фреда».

Который долгий путь говорит о том, что, по крайней мере мысленно, а также среди тех, кто понимает японский язык, я склонен их отличать, читая их так:

 $A->B(); // "Call $A's B." C::D(); // "Call C の D." 

Но чтение обоих как притяжательных «работает» тоже для неяпонских ораторов. Вы также можете перевернуть их и использовать «из», поэтому «D of C» … но это неловко, и вам это сложно сделать, вы быстро читаете, потому что это ломает ваш линейный поток.

Если бы я диктовал, хотя, возможно, когда кодовое кодирование и предлагая ввести тип, я бы назвал конкретные символы как «тире больше, чем стрелка» и «двойная двоеточие» (если я знаю человека, с которым я говорю это PHPophile, я мог бы назвать это «паамайим некудотаим двойной двоеточием» в первый раз, отчасти потому, что это классная шутка, отчасти для предотвращения их «исправления» меня).