本文整理汇总了PHP中Puli\Manager\Assert\Assert::nullOrStringNotEmpty方法的典型用法代码示例。如果您正苦于以下问题:PHP Assert::nullOrStringNotEmpty方法的具体用法?PHP Assert::nullOrStringNotEmpty怎么用?PHP Assert::nullOrStringNotEmpty使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Puli\Manager\Assert\Assert
的用法示例。
在下文中一共展示了Assert::nullOrStringNotEmpty方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: __construct
/**
* Creates a binding type descriptor.
*
* @param BindingType $type The described type.
* @param string|null $description A human-readable description of
* the type.
* @param string[] $parameterDescriptions Human-readable descriptions
* indexed by the type's parameter
* names.
*
* @throws NoSuchParameterException If a description is passed for an unset
* parameter.
*/
public function __construct(BindingType $type, $description = null, array $parameterDescriptions = array())
{
Assert::nullOrStringNotEmpty($description, 'The description must be a non-empty string or null. Got: %s');
Assert::allStringNotEmpty($parameterDescriptions, 'The parameter description must be a non-empty string. Got: %s');
$this->type = $type;
$this->description = $description;
foreach ($parameterDescriptions as $parameterName => $parameterDescription) {
if (!$type->hasParameter($parameterName)) {
throw NoSuchParameterException::forParameterName($parameterName, $type->getName());
}
$this->parameterDescriptions[$parameterName] = $parameterDescription;
}
}
示例2: __construct
/**
* Creates a new installer descriptor.
*
* @param string $name The installer name.
* @param string $className The fully-qualified class name
* of the installer.
* @param string|null $description The description of the installer.
* @param InstallerParameter[] $parameters The installer parameters.
*/
public function __construct($name, $className, $description = null, array $parameters = array())
{
Assert::stringNotEmpty($name, 'The installer name must be a non-empty string. Got: %s');
Assert::stringNotEmpty($className, 'The installer class must be a non-empty string. Got: %s');
Assert::nullOrStringNotEmpty($description, 'The installer description must be a non-empty string or null. Got: %s');
Assert::allIsInstanceOf($parameters, __NAMESPACE__ . '\\InstallerParameter');
$this->name = $name;
$this->className = $className;
$this->description = $description;
foreach ($parameters as $parameter) {
$this->parameters[$parameter->getName()] = $parameter;
}
}
示例3: __construct
/**
* Creates the import statement.
*
* @param string $className The fully-qualified imported class name.
* @param string|null $alias If not `null`, the class will be imported
* with the given alias.
*/
public function __construct($className, $alias = null)
{
Assert::stringNotEmpty($className, 'The imported class name must be a non-empty string. Got: %s');
Assert::nullOrStringNotEmpty($className, 'The import alias must be a non-empty string or null. Got: %s');
$pos = strrpos($className, '\\');
if (false === $pos) {
$this->namespaceName = '';
$this->shortClassName = $className;
} else {
$this->namespaceName = substr($className, 0, $pos);
$this->shortClassName = substr($className, $pos + 1);
}
$this->alias = $alias;
}
示例4: refreshFactoryClass
/**
* {@inheritdoc}
*/
public function refreshFactoryClass($path = null, $className = null)
{
Assert::nullOrStringNotEmpty($path, 'The path to the generated factory file must be a non-empty string or null. Got: %s');
Assert::nullOrStringNotEmpty($className, 'The class name of the generated factory must be a non-empty string or null. Got: %s');
$path = Path::makeAbsolute($path ?: $this->config->get(Config::FACTORY_OUT_FILE), $this->rootDir);
$className = $className ?: $this->config->get(Config::FACTORY_OUT_CLASS);
if (!$this->config->get(Config::FACTORY_AUTO_GENERATE)) {
return;
}
if (!file_exists($path)) {
$this->generateFactoryClass($path, $className);
return;
}
$rootModuleFile = $this->context->getRootModuleFile()->getPath();
if (!file_exists($rootModuleFile)) {
return;
}
// Regenerate file if the configuration has changed and
// auto-generation is enabled
clearstatcache(true, $rootModuleFile);
$lastConfigChange = filemtime($rootModuleFile);
$configFile = $this->context->getConfigFile() ? $this->context->getConfigFile()->getPath() : '';
if (file_exists($configFile)) {
clearstatcache(true, $configFile);
$lastConfigChange = max(filemtime($configFile), $lastConfigChange);
}
clearstatcache(true, $path);
$lastFactoryUpdate = filemtime($path);
if ($lastConfigChange > $lastFactoryUpdate) {
$this->generateFactoryClass($path, $className);
}
}