assert() ???

Redjik

Джедай-мастер
В sphinxapi.php просто куча assert ()
Три раза перечитывал мануал и смотрел примеры, но так и не понял - на кой черт оно нужно...

что делает этот код например?
PHP:
	function SetLimits ( $offset, $limit, $max=0, $cutoff=0 )
	{
		assert ( is_int($offset) );
		assert ( is_int($limit) );
		assert ( $offset>=0 );
		assert ( $limit>0 );
		assert ( $max>=0 );
		$this->_offset = $offset;
		$this->_limit = $limit;
		if ( $max>0 )
			$this->_maxmatches = $max;
		if ( $cutoff>0 )
			$this->_cutoff = $cutoff;
	}
интересует только часть с assert ами...
Я понимаю, что какие то проверки идут... НО
assert() проверит заданное утверждение assertion и совершит соответствующее действие, если результатом проверки окажется FALSE.
Я не понимаю какое соответствующее действие эта хрень совершит =)
 

Вурдалак

Продвинутый новичок
Выдаст Warning, который попадёт в лог, либо выбросится исключение в зависимости от.
 

Redjik

Джедай-мастер
я просто могу понять
PHP:
if (true)
   throw new Exception ('Огого');
 

~WR~

Новичок
Sphinxapi написан в стиле php4. Тогда еще не было exception'ов.
Assert - это самый короткий способ проверить корректность входящих аргументов и, в случае фейла, завершить работу скрипта.
 
Сверху