我已经了解到我需要在php中使用名称空间,就像我在下面的代码中使用的那样,但我得到Fatal error: Trait 'SuperClosure\Serializer' not found
我这样用它:
use SuperClosure\Serializer;
public function set( $key, $value )
{
$key = strtolower( $key );
$serializer = new Serializer();
$serialized = $serializer->serialize($value);
$_SESSION["HA::STORE"][$key] = $serialized;
}
我哪里错了?请告诉我使用它的正确方法?
答案 0 :(得分:3)
在声明类之前,您需要使用名称空间,因为单词use
指向Trait
机制(PHP: Traits)。类中名称空间和特征的示例:
<?php namespace Foo\Bar;
/* I am telling to PHP compiler that class
* Serializer has different path than class Baz.
*/
use SuperClosure\Serializer;
use SuperClosure\Shortcuts;
class Baz {
/* Now I used Trait. That should include
* methods defined in trait Shortcuts
*/
use Shortcuts;
}
另外,我建议您详细了解namespaces和importing。