当前位置: 首页>>代码示例>>PHP>>正文


PHP HandlerBase::breakString方法代码示例

本文整理汇总了PHP中Drupal\views\Plugin\views\HandlerBase::breakString方法的典型用法代码示例。如果您正苦于以下问题:PHP HandlerBase::breakString方法的具体用法?PHP HandlerBase::breakString怎么用?PHP HandlerBase::breakString使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Drupal\views\Plugin\views\HandlerBase的用法示例。


在下文中一共展示了HandlerBase::breakString方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: testBreakString

 /**
  * Tests the breakString method.
  */
 public function testBreakString()
 {
     // Check defaults.
     $this->assertEqual((object) array('value' => array(), 'operator' => NULL), HandlerBase::breakString(''));
     // Test ors
     $handler = HandlerBase::breakString('word1 word2+word');
     $this->assertEqualValue(array('word1', 'word2', 'word'), $handler);
     $this->assertEqual('or', $handler->operator);
     $handler = HandlerBase::breakString('word1+word2+word');
     $this->assertEqualValue(array('word1', 'word2', 'word'), $handler);
     $this->assertEqual('or', $handler->operator);
     $handler = HandlerBase::breakString('word1 word2 word');
     $this->assertEqualValue(array('word1', 'word2', 'word'), $handler);
     $this->assertEqual('or', $handler->operator);
     $handler = HandlerBase::breakString('word-1+word-2+word');
     $this->assertEqualValue(array('word-1', 'word-2', 'word'), $handler);
     $this->assertEqual('or', $handler->operator);
     $handler = HandlerBase::breakString('wõrd1+wõrd2+wõrd');
     $this->assertEqualValue(array('wõrd1', 'wõrd2', 'wõrd'), $handler);
     $this->assertEqual('or', $handler->operator);
     // Test ands.
     $handler = HandlerBase::breakString('word1,word2,word');
     $this->assertEqualValue(array('word1', 'word2', 'word'), $handler);
     $this->assertEqual('and', $handler->operator);
     $handler = HandlerBase::breakString('word1 word2,word');
     $this->assertEqualValue(array('word1 word2', 'word'), $handler);
     $this->assertEqual('and', $handler->operator);
     $handler = HandlerBase::breakString('word1,word2 word');
     $this->assertEqualValue(array('word1', 'word2 word'), $handler);
     $this->assertEqual('and', $handler->operator);
     $handler = HandlerBase::breakString('word-1,word-2,word');
     $this->assertEqualValue(array('word-1', 'word-2', 'word'), $handler);
     $this->assertEqual('and', $handler->operator);
     $handler = HandlerBase::breakString('wõrd1,wõrd2,wõrd');
     $this->assertEqualValue(array('wõrd1', 'wõrd2', 'wõrd'), $handler);
     $this->assertEqual('and', $handler->operator);
     // Test a single word
     $handler = HandlerBase::breakString('word');
     $this->assertEqualValue(array('word'), $handler);
     $this->assertEqual('and', $handler->operator);
     $s1 = $this->randomMachineName();
     // Generate three random numbers which can be used below;
     $n1 = rand(0, 100);
     $n2 = rand(0, 100);
     $n3 = rand(0, 100);
     // Test "or"s.
     $handlerBase = HandlerBase::breakString("{$s1} {$n2}+{$n3}");
     $this->assertEqualValue(array($s1, $n2, $n3), $handlerBase);
     $this->assertEqual('or', $handlerBase->operator);
     $handlerBase = HandlerBase::breakString("{$s1}+{$n2}+{$n3}");
     $this->assertEqualValue(array($s1, $n2, $n3), $handlerBase);
     $this->assertEqual('or', $handlerBase->operator);
     $handlerBase = HandlerBase::breakString("{$s1} {$n2} {$n3}");
     $this->assertEqualValue(array($s1, $n2, $n3), $handlerBase);
     $this->assertEqual('or', $handlerBase->operator);
     $handlerBase = HandlerBase::breakString("{$s1} {$n2}++{$n3}");
     $this->assertEqualValue(array($s1, $n2, $n3), $handlerBase);
     $this->assertEqual('or', $handlerBase->operator);
     // Test "and"s.
     $handlerBase = HandlerBase::breakString("{$s1},{$n2},{$n3}");
     $this->assertEqualValue(array($s1, $n2, $n3), $handlerBase);
     $this->assertEqual('and', $handlerBase->operator);
     $handlerBase = HandlerBase::breakString("{$s1},,{$n2},{$n3}");
     $this->assertEqualValue(array($s1, $n2, $n3), $handlerBase);
     $this->assertEqual('and', $handlerBase->operator);
     // Enforce int values.
     $handlerBase = HandlerBase::breakString("{$n1},{$n2},{$n3}", TRUE);
     $this->assertEqualValue(array($n1, $n2, $n3), $handlerBase);
     $this->assertEqual('and', $handlerBase->operator);
     $handlerBase = HandlerBase::breakString("{$n1}+{$n2}+{$n3}", TRUE);
     $this->assertEqualValue(array($n1, $n2, $n3), $handlerBase);
     $this->assertEqual('or', $handlerBase->operator);
     $handlerBase = HandlerBase::breakString("{$s1},{$n2},{$n3}", TRUE);
     $this->assertEqualValue(array((int) $s1, $n2, $n3), $handlerBase);
     $this->assertEqual('and', $handlerBase->operator);
     $handlerBase = HandlerBase::breakString("{$s1}+{$n2}+{$n3}", TRUE);
     $this->assertEqualValue(array((int) $s1, $n2, $n3), $handlerBase);
     $this->assertEqual('or', $handlerBase->operator);
     // Generate three random decimals which can be used below;
     $d1 = rand(0, 10) / 10;
     $d2 = rand(0, 10) / 10;
     $d3 = rand(0, 10) / 10;
     // Test "or"s.
     $handlerBase = HandlerBase::breakString("{$s1} {$d1}+{$d2}");
     $this->assertEqualValue(array($s1, $d1, $d2), $handlerBase);
     $this->assertEqual('or', $handlerBase->operator);
     $handlerBase = HandlerBase::breakString("{$s1}+{$d1}+{$d3}");
     $this->assertEqualValue(array($s1, $d1, $d3), $handlerBase);
     $this->assertEqual('or', $handlerBase->operator);
     $handlerBase = HandlerBase::breakString("{$s1} {$d2} {$d3}");
     $this->assertEqualValue(array($s1, $d2, $d3), $handlerBase);
     $this->assertEqual('or', $handlerBase->operator);
     $handlerBase = HandlerBase::breakString("{$s1} {$d2}++{$d3}");
     $this->assertEqualValue(array($s1, $d2, $d3), $handlerBase);
     $this->assertEqual('or', $handlerBase->operator);
     // Test "and"s.
     $handlerBase = HandlerBase::breakString("{$s1},{$d2},{$d3}");
//.........这里部分代码省略.........
开发者ID:sojo,项目名称:d8_friendsofsilence,代码行数:101,代码来源:HandlerTest.php


注:本文中的Drupal\views\Plugin\views\HandlerBase::breakString方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。