<?php
interface ObjectRepository
{
/**
* Finds an object by its primary key / identifier.
*
* @param mixed $id The identifier.
*
* @return object The object.
*/
public function find($id);
/**
* Finds all objects in the repository.
*
* @return array The objects.
*/
public function findAll();
/**
* Finds objects by a set of criteria.
*
* Optionally sorting and limiting details can be passed. An implementation may throw
* an UnexpectedValueException if certain values of the sorting or limiting details are
* not supported.
*
* @param array $criteria
* @param array|null $orderBy
* @param int|null $limit
* @param int|null $offset
*
* @return array The objects.
*
* @throws \UnexpectedValueException
*/
public function findBy(array $criteria, array $orderBy = null, $limit = null, $offset = null);
/**
* Finds a single object by a set of criteria.
*
* @param array $criteria The criteria.
*
* @return object The object.
*/
public function findOneBy(array $criteria);
/**
* Returns the class name of the object managed by the repository.
*
* @return string
*/
public function getClassName();
}
interface ModelRepositoryInterface extends ObjectRepository
{
public function createNew();
/**
* Have to use different method because ObjectRepository defines findOneBy(array $criteria);
*
* @param array $criteria
* @param array $orderBy
* @return mixed
*/
public function findOne(array $criteria, array $orderBy = null);
/**
* Returns the class name of the object managed by the repository.
*
* @return string
*/
public function getClassName();
}
Fatal error: Can't inherit abstract function ObjectRepository::getClassName() (previously declared abstract in ModelRepositoryInterface) in /in/tsYKM on line 57
Process exited with code 255.
Output for 5.1.0 - 5.1.6, 5.2.0 - 5.2.17
Fatal error: Can't inherit abstract function ObjectRepository::getClassName() (previously declared abstract in ModelRepositoryInterface) in /in/tsYKM on line 56
Process exited with code 255.
Output for 5.0.0 - 5.0.5
Parse error: parse error, unexpected T_ARRAY, expecting '&' or T_VARIABLE in /in/tsYKM on line 37
Process exited with code 255.
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STRING in /in/tsYKM on line 3
Process exited with code 255.