Импортировать класс условно с использованием ключевого слова 'use'

Я никогда не видел эту структуру нигде, поэтому я сомневаюсь, что это что-то не так с выражением вроде этого:

if (condition) { use Symfony\Component\HttpFoundation\Response; } 

Единственное, что нужно сделать, это псевдоним имени класса. Вот и все. Больше ничего.
Вместо того, чтобы многократно писать полное имя класса в вашем скрипте:

 $q = new \Foo\Bar\Baz\Quux; if ($q instanceof \Foo\Bar\Baz\Quux) ... 

Вы можете сократить это до:

 use Foo\Bar\Baz\Quux; $q = new Quux; if ($q instanceof Quux) ... 

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

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

Это вызовет синтаксическую ошибку. Из TFM:

Ключевое слово use должно быть объявлено в самой внешней области файла (глобальной области) или внутри декларации пространства имен. Это связано с тем, что импорт выполняется во время компиляции, а не во время выполнения, поэтому его нельзя блокировать.