Как функция strpos () в PHP возвращает int и boolean?

Вот что говорит w3School о StrPos () функция:

Возвращает позицию первого вхождения строки в другой строке или FALSE, если строка не найдена.

Как определяется функция? Можно ли написать такие функции, которые возвращают значения 2 разных типов данных и на других языках?

1

Решение

Многие динамически типизированные языки позволяют вам возвращать из функции все, что вы хотите. Строго типизированные языки, как правило, этого не делают.

В PHP функция может вернуть что-нибудь он хочет, включая логические, целочисленные, строковые, нулевые, массивы, все виды объектов, все, что вам нужно. То же самое, например, в Javascript и Lua, которые также динамически набираются.

Просто убедитесь, что вы проверили тип возвращаемого значения функции, если это могут быть разные вещи. Особенно с такими вещами, как int (0) и false, которые считаются эквивалентными, если вы используете сравнение ==. Используйте ===, чтобы убедиться, что это правильный тип.

2

Другие решения

Других языков нет loosely typed variables and function returns, Возьмите для примера С.

Взято из php.net:

PHP is a dynamic, loosely typed language, that uses copy-on-write and reference counting.
1

По вопросам рекламы [email protected]