| Conditions | 5 | 
| Paths | 6 | 
| Total Lines | 17 | 
| Code Lines | 9 | 
| Lines | 0 | 
| Ratio | 0 % | 
| Tests | 10 | 
| CRAP Score | 5 | 
| Changes | 0 | ||
| 1 | <?php namespace Pz\Doctrine\Rest\Fractal;  | 
            ||
| 35 | 17 | protected function serializeResource(SerializerAbstract $serializer, $data)  | 
            |
| 36 |     { | 
            ||
| 37 | 17 | $includeAttributes = true;  | 
            |
| 38 | 17 | $resourceKey = $this->resource->getResourceKey();  | 
            |
| 39 | 17 |         if ($this->isRelationships() && $this->isRootScope()) { | 
            |
| 40 | 3 | $includeAttributes = false;  | 
            |
| 41 | }  | 
            ||
| 42 | |||
| 43 | 17 |         if ($this->resource instanceof Collection) { | 
            |
| 44 | 12 | return $serializer->collection($resourceKey, $data, $includeAttributes);  | 
            |
| 45 | }  | 
            ||
| 46 | |||
| 47 | 8 |         if ($this->resource instanceof Item) { | 
            |
| 48 | 8 | return $serializer->item($resourceKey, $data, $includeAttributes);  | 
            |
| 49 | }  | 
            ||
| 50 | |||
| 51 | 1 | return $serializer->null();  | 
            |
| 52 | }  | 
            ||
| 54 | 
Let?s assume that you have a directory layout like this:
. |-- OtherDir | |-- Bar.php | `-- Foo.php `-- SomeDir `-- Foo.phpand let?s assume the following content of
Bar.php:If both files
OtherDir/Foo.phpandSomeDir/Foo.phpare loaded in the same runtime, you will see a PHP error such as the following:PHP Fatal error: Cannot use SomeDir\Foo as Foo because the name is already in use in OtherDir/Foo.phpHowever, as
OtherDir/Foo.phpdoes not necessarily have to be loaded and the error is only triggered if it is loaded beforeOtherDir/Bar.php, this problem might go unnoticed for a while. In order to prevent this error from surfacing, you must import the namespace with a different alias: