本文整理汇总了PHP中R::tag方法的典型用法代码示例。如果您正苦于以下问题:PHP R::tag方法的具体用法?PHP R::tag怎么用?PHP R::tag使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类R
的用法示例。
在下文中一共展示了R::tag方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testFUSE
/**
* Test FUSE and model formatting.
*
* @todo move tagging tests to tag tester.
*
* @return void
*/
public function testFUSE()
{
$toolbox = R::$toolbox;
$adapter = $toolbox->getDatabaseAdapter();
$blog = R::dispense('blog');
$blog->title = 'testing';
$blog->blog = 'tesing';
R::store($blog);
$blogpost = R::load("blog", 1);
$post = R::dispense("post");
$post->message = "hello";
R::associate($blog, $post);
$a = R::getAll("select * from blog ");
RedBean_ModelHelper::setModelFormatter(new mymodelformatter());
$w = R::dispense("weirdo");
asrt($w->blah(), "yes!");
R::tag($post, "lousy,smart");
asrt(implode(',', R::tag($post)), "lousy,smart");
R::tag($post, "clever,smart");
$tagz = implode(',', R::tag($post));
asrt($tagz == "smart,clever" || $tagz == "clever,smart", TRUE);
R::tag($blog, array("smart", "interesting"));
asrt(implode(',', R::tag($blog)), "smart,interesting");
try {
R::tag($blog, array("smart", "interesting", "lousy!"));
pass();
} catch (RedBean_Exception $e) {
fail();
}
asrt(implode(',', R::tag($blog)), "smart,interesting,lousy!");
asrt(implode(",", R::tag($blog)), "smart,interesting,lousy!");
R::untag($blog, array("smart", "interesting"));
asrt(implode(",", R::tag($blog)), "lousy!");
asrt(R::hasTag($blog, array("lousy!")), TRUE);
asrt(R::hasTag($blog, array("lousy!", "smart")), TRUE);
asrt(R::hasTag($blog, array("lousy!", "smart"), TRUE), FALSE);
R::tag($blog, FALSE);
asrt(count(R::tag($blog)), 0);
R::tag($blog, array("funny", "comic"));
asrt(count(R::tag($blog)), 2);
R::addTags($blog, array("halloween"));
asrt(count(R::tag($blog)), 3);
asrt(R::hasTag($blog, array("funny", "commic", "halloween"), TRUE), FALSE);
R::unTag($blog, array("funny"));
R::addTags($blog, "horror");
asrt(count(R::tag($blog)), 3);
asrt(R::hasTag($blog, array("horror", "commic", "halloween"), TRUE), FALSE);
// No double tags
R::addTags($blog, "horror");
asrt(R::hasTag($blog, array("horror", "commic", "halloween"), TRUE), FALSE);
asrt(count(R::tag($blog)), 3);
}
示例2: getTags
public function getTags($bean)
{
return R::tag($bean);
}
示例3: hasTag
public static function hasTag($bean, $tags, $all = false)
{
$foundtags = R::tag($bean);
if (is_string($foundtags)) {
$foundtags = explode(",", $tags);
}
$same = array_intersect($tags, $foundtags);
if ($all) {
return implode(",", $same) === implode(",", $tags);
}
return (bool) (count($same) > 0);
}
示例4: asrt
R::exec("drop table book");
R::wipe("book");
R::wipe("tag");
R::wipe("book_tag");
$b = R::dispense("book");
$b->title = 'horror';
R::store($b);
$c = R::dispense("book");
$c->title = 'creepy';
R::store($c);
$d = R::dispense("book");
$d->title = "chicklit";
R::store($d);
R::tag($b, "horror,classic");
R::tag($d, "women,classic");
R::tag($c, "horror");
$x = R::tagged("book", "classic");
asrt(count($x), 2);
$x = R::tagged("book", "classic,horror");
asrt(count($x), 3);
testpack("test optimization related() ");
class TestFormatter implements RedBean_IBeanFormatter
{
public function formatBeanTable($table)
{
return "xx_{$table}";
}
public function formatBeanID($table)
{
return "id";
}
示例5: fetchTaggedItems
/**
* Fetching tagged items.
*
* @return void
*/
public function fetchTaggedItems()
{
$b = R::dispense("book");
$b->title = 'horror';
R::store($b);
$c = R::dispense("book");
$c->title = 'creepy';
R::store($c);
$d = R::dispense("book");
$d->title = "chicklit";
R::store($d);
R::tag($b, "horror,classic");
R::tag($d, "women,classic");
R::tag($c, "horror");
$x = R::tagged("book", "classic");
asrt(count($x), 2);
$x = R::tagged("book", "classic,horror");
asrt(count($x), 3);
$x = R::tagged("book", array("classic", "horror"));
asrt(count($x), 3);
}