Если нельзя измерить, зачит надо просто думать.
Если код функции перед выполнением сначала читается целиком и компилируется в некую форму для интерпретатора, то разницы во времени исполнения не будет.
А если интерпретировать код "в лоб" т.е. сразу, по мере его чтения, то первая форма
if (condition) {... exit;}
без сомнения будет работать быстрее (если условие в if == true).
Т.о. вопрос сводится к -- "Как работает интерпретатор PHP?"
--
Моя догадка -- разницы во времени выполнения не будет.
--
Еще одно замечание -- не стоит делать измерения, когда в if константное выражение.
Update
Вижу в комментариях непонимание текста ответа.
В резюме я написал -- "Моя догадка -- разницы во времени выполнения не будет."
Это означает, что какая-то предварительная компиляция тела функции проводится, по крайней мере весь ее текст будет прочитан до исполнения, т.е. в реальности код не исполняется во время чтения.
Для подтверждения -- небольшой примерчик
avp@avp-xub11:hashcode$ cat t.php
<?php
if(1!=1)
{
echo "1\n"
echo Ошибка1;
}
else
{
echo "2\n";
echo Ошибка2;
}
?>
avp@avp-xub11:hashcode$ php <t.php
PHP Parse error: syntax error, unexpected 'echo' (T_ECHO), expecting ',' or ';' in - on line 5
avp@avp-xub11:hashcode$
Как видите -- Parse error в блоке, который не исполняется. А вот реакцию на ошибку echo Ошибка2;
мы увидим, если исправим первую (отсутствует ;
)
avp@avp-xub11:hashcode$ php <t.php
2
PHP Notice: Use of undefined constant Ошибка2 - assumed 'Ошибка2' in - on line 10
Ошибка2avp@avp-xub11:hashcode$
Мне кажется, что теперь все достаточно очевидно.