phpninjas/comprehensions

此包的最新版本(v0.1.0)没有可用的许可证信息。

v0.1.0 2015-01-06 23:08 UTC

This package is not auto-updated.

Last update: 2024-09-24 04:09:57 UTC


README

安装

composer.json

{
  "require": {
    "phpninjas/comprehensions":"dev-master"
  }
}

选项

假设你在使用 Doctrine,并且不知道通过 id 查找对象是否会得到一个对象或一个 null 值。因此,你可能想将对象包裹在 option 中。它将是 Some[DbObject] 或 None。然而,你仍然可以像它将是一个 DbObject 一样执行映射操作。因此,你不需要进行 null 检查。

$product = $entityManager->find('Product', "some identifier");

if ($product === null) {
    return $product->getName();   
}
return "";

变为

$product = Option($entityManager->find('Product', "some identifier"));
$name = $product->map(function($p){
  return $p->getName();
});

return $name->getOrElse("");