本文整理汇总了PHP中Unit::getAbbr方法的典型用法代码示例。如果您正苦于以下问题:PHP Unit::getAbbr方法的具体用法?PHP Unit::getAbbr怎么用?PHP Unit::getAbbr使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Unit
的用法示例。
在下文中一共展示了Unit::getAbbr方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testAbbreviation
public function testAbbreviation()
{
$unit = new Unit('Kilogram', 'kg');
$this->assertEquals('kg', $unit->getAbbr());
$unit = new Unit('Kilogram', '..kilo gram ');
$this->assertEquals('kilogram', $unit->getAbbr());
$unit = new Unit('Kilogram', '1kg');
$this->assertEquals('kg', $unit->getAbbr());
}
示例2: getIndirectConversion
/**
* Convert over a number of hops if possible
*
* Breadth-first search from http://www.sitepoint.com/data-structures-4/
*
* @return SplDoublyLinkedList|array
*/
protected function getIndirectConversion(Unit $from, Unit $to)
{
$origin = $from->getAbbr();
$destination = $to->getAbbr();
// Mark all nodes as unvisited
$visited = array();
foreach ($this->conversions as $vertex => $adj) {
$visited[$vertex] = false;
}
// Create a queue
$q = new \SplQueue();
// Enqueue the origin vertex and mark as visited
$q->enqueue($origin);
$visited[$origin] = true;
// Create a path that can be back-tracked
$path = array();
$path[$origin] = new \SplDoublyLinkedList();
$path[$origin]->setIteratorMode(\SplDoublyLinkedList::IT_MODE_FIFO | \SplDoublyLinkedList::IT_MODE_KEEP);
$found = false;
while (!$q->isEmpty() && $q->bottom() != $destination) {
$t = $q->dequeue();
if (!empty($this->conversions[$t])) {
// For each adjacent neighbour,
foreach ($this->conversions[$t] as $vertex => $conv) {
if (!array_key_exists($vertex, $visited) || !$visited[$vertex]) {
// Mark as visited and enqueue
$q->enqueue($vertex);
$visited[$vertex] = true;
// Add to current path
$path[$vertex] = clone $path[$t];
$path[$vertex]->push($conv);
}
}
}
}
if (isset($path[$destination])) {
return $path[$destination];
} else {
return array();
}
}