Articles of литья

Использование settype в PHP вместо typecasting с помощью скобок, в чем разница?

В PHP вы можете придумать что-то вроде объекта; (объект), или вы можете использовать settype ($ var, "object") – но мой вопрос в чем разница между этими двумя? Какой из них более эффективен / лучше использовать? На данный момент я нахожу, что использование (объект) выполняет эту работу, но интересно, почему есть функция settype.

Тип литья и сравнение с Loose Operator "=="

У меня есть проблема, которая сбивает меня с толку. Я заметил это раньше, но до сих пор не обращал на это внимания. Я пытался написать собственный чек для целых строк. Я знаю is_numeric() но этого недостаточно, поскольку он считает float как числовое значение не только integers а is_int() которое не работает с строковыми числами. Я […]

get_object_vars () против переноса в массив

Существуют ли различия между get_object_vars($obj) и (array) $obj ? Оба, похоже, возвращают общедоступные свойства объекта. Что лучше?

PHP: математические вычисления и сравнения

Я ожидал бы, что все приведенные ниже сравнения будут bool (true), но это не так. Может кто-нибудь объяснить это? test.php <?php $f = 12; $f += 5.95; $f += 5.95; $f += 5.95; echo 'var_dump($f) = '; var_dump($f); echo 'var_dump($f == \'29.85\') = '; var_dump($f == '29.85'); echo 'var_dump($f == 29.85) = '; var_dump($f == […]

Сравнение String с Integer дает странные результаты

Я очень смущен, почему эта операция работает. Может кто-нибудь объяснить это? $test1 = "d85d1d81b25614a3504a3d5601a9cb2e"; $test2 = "3581169b064f71be1630b321d3ca318f"; if ($test1 == 0) echo "Test 1 is Equal!?"; if ($test2 == 0) echo "Test 2 is Equal!?"; // Returns: Test 1 is Equal!? Для уточнения, я пытаюсь сравнить строку "0" с переменными $test . Я уже знаю, […]