本文整理汇总了PHP中TextHelper::highlight方法的典型用法代码示例。如果您正苦于以下问题:PHP TextHelper::highlight方法的具体用法?PHP TextHelper::highlight怎么用?PHP TextHelper::highlight使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TextHelper
的用法示例。
在下文中一共展示了TextHelper::highlight方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: auto_complete_result
/**
* Use this method in your view to generate a return for the AJAX autocomplete requests.
*
* Example action:
*
* function auto_complete_for_item_title()
* {
* $this->items = $Item->find('all', array('conditions' => array('strtolower($description).' LIKE ?', '%' . strtolower($this->_controller->Request->getRawPostData(). '%' ))))
* return $this->_controller->render(array('inline'=> '<?= $javascript_macros->auto_complete_result(@$items, 'description') ?>'));
* }
*
* The auto_complete_result can of course also be called from a view belonging to the
* auto_complete action if you need to decorate it further.
*
* @deprecated
*/
function auto_complete_result($entries, $field, $phrase = null)
{
if (empty($entries)) {
return '';
}
foreach ($entries as $entry) {
$items[] = TagHelper::content_tag('li',!empty($phrase) ? TextHelper::highlight(TextHelper::h($entry[$field]), $phrase) : TextHelper::h(@$entry[$field]));
}
return TagHelper::content_tag('ul', join('', array_unique($items)));
}
示例2: highlightErrors
function highlightErrors($xhtml)
{
$highlighted_xhtml = array();
if (!empty($this->_linesToHighlight)) {
$xhtml_arr = preg_split('/\\n|\\r/', $xhtml);
foreach ($xhtml_arr as $k => $xhtml_line) {
$pos = $k + $this->_startLine;
$highlighted_xhtml[$k] = $pos . " ";
$xhtml_line = htmlentities($xhtml_line);
if (isset($this->_linesToHighlight[$pos])) {
foreach ($this->_linesToHighlight[$pos] as $highlight_details) {
$highlighted_xhtml[$k] .= TextHelper::highlight($xhtml_line, $highlight_details['phrase'], '<strong style="border:2px solid #' . $highlight_details['color'] . ';padding:1px; margin:1px; background: #ffc;">\\1</strong>');
}
} else {
$highlighted_xhtml[$k] .= $xhtml_line;
}
$highlighted_xhtml[$k] .= "<br />\n";
}
}
return empty($highlighted_xhtml) ? $xhtml : join($highlighted_xhtml);
}
示例3: TextHelper
function test_for_TextHelper()
{
require_once AK_LIB_DIR . DS . 'AkActionView' . DS . 'helpers' . DS . 'text_helper.php';
$text = new TextHelper();
$this->assertEqual($text->truncate('truncates the last ten characters', 10, '...'), 'truncates the...');
$this->assertEqual($text->highlight('I am highlighting the phrase', 'highlighting'), 'I am <strong class="highlight">highlighting</strong> the phrase');
$this->assertEqual($text->highlight('I am highlighting the phrase', array('highlighting', 'the')), 'I am <strong class="highlight">highlighting</strong> <strong class="highlight">the</strong> phrase');
$this->assertEqual($text->excerpt("hello my world", "my", 3), '...lo my wo...');
$this->assertEqual($text->excerpt("hello my world", "my", 5, '---'), '---ello my worl---');
$this->assertEqual($text->pluralize(0, 'Property', 'Properties'), 'Properties');
$this->assertEqual($text->pluralize(1, 'Property'), 'Property');
$this->assertEqual($text->pluralize(2, 'Property'), 'Properties');
$this->assertEqual($text->word_wrap('Wraps a string to a given number of characters', 20), "Wraps a string to a\ngiven number of\ncharacters");
$this->assertEqual($text->textilize('__Wraps__'), '<p><i>Wraps</i></p>');
$this->assertEqual($text->textilize('_Wraps_'), '<p><em>Wraps</em></p>');
$this->assertEqual($text->textilize('p[no]. paragraph'), '<p lang="no">paragraph</p>');
$this->assertEqual($text->textilize('h3{color:red}. header 3'), '<h3 style="color:red;">header 3</h3>');
$this->assertEqual($text->textilize_without_paragraph('__Wraps__'), '<i>Wraps</i>');
$this->assertEqual($text->textilize_without_paragraph('p[no]. paragraph'), 'paragraph');
require_once AK_LIB_DIR . DS . 'AkActionView' . DS . 'helpers' . DS . 'tag_helper.php';
$this->assertEqual($text->simple_format("Test\r\n"), "<p>Test\n</p>");
$this->assertEqual($text->simple_format("Test\n"), "<p>Test\n</p>");
$this->assertEqual($text->simple_format("Test\r"), "<p>Test\n</p>");
$this->assertEqual($text->simple_format("Test\n\nTest"), "<p>Test</p>\n<p>Test</p>");
$this->assertEqual($text->simple_format("Test\n\n"), "<p>Test</p><br /><br />");
$this->assertEqual($text->simple_format("Test\n\n\n\n\n\n"), "<p>Test</p><br /><br />");
$this->assertEqual($text->auto_link_email_addresses('sending an email to salavert@example.com and to hilario@example.com'), 'sending an email to <a href=\'mailto:salavert@example.com\'>salavert@example.com</a> and to <a href=\'mailto:hilario@example.com\'>hilario@example.com</a>');
$this->assertEqual($text->auto_link_email_addresses('salavert@@example.com'), 'salavert@@example.com');
$this->assertEqual($text->auto_link_email_addresses('email sent to salavert@example.c'), 'email sent to <a href=\'mailto:salavert@example.c\'>salavert@example.c</a>');
$this->assertEqual($text->auto_link_urls('http://www.thebigmover.com'), '<a href="http://www.thebigmover.com">http://www.thebigmover.com</a>');
$this->assertEqual($text->auto_link_urls('www.thebigmover.com'), '<a href="http://www.thebigmover.com">www.thebigmover.com</a>');
//$this->assertEqual($text->auto_link_urls('www.thebigmover.com nested www.thebigmover.com/search'),'<a href="http://www.thebigmover.com">www.thebigmover.com</a> nested <a href="http://www.thebigmover.com/search">www.thebigmover.com/search</a>');//, 'Failed auto_link_urls nested url');
$this->assertEqual($text->auto_link_urls('Visit http://www.thebigmover.com now'), 'Visit <a href="http://www.thebigmover.com">http://www.thebigmover.com</a> now');
$this->assertEqual($text->auto_link_urls('Visit http://www.thebigmover.com now and later http://www.akelos.com'), 'Visit <a href="http://www.thebigmover.com">http://www.thebigmover.com</a> now and later <a href="http://www.akelos.com">http://www.akelos.com</a>');
$this->assertEqual($text->strip_links('email sent to <a href=\'mailto:salavert@example.c\'>salavert@example.c</a>'), 'email sent to salavert@example.c');
$this->assertEqual($text->strip_links('sending an email to <a href="mailto:salavert@example.com">salavert@example.com</a> and to <a href="mailto:hilario@example.com">hilario@example.com</a>'), 'sending an email to salavert@example.com and to hilario@example.com');
//, 'Failed auto_link_email_addresses test');
$this->assertEqual($text->strip_selected_tags('sending <b>email</b> to <a href="mailto:salavert@example.com">salavert@example.com</a>', 'a', 'b'), 'sending email to salavert@example.com');
//, 'Failed auto_link_email_addresses test');
$this->assertEqual($text->strip_selected_tags('sending <b>email</b> to <a href="mailto:salavert@example.com">salavert@example.com</a>', array('a', 'b')), 'sending email to salavert@example.com');
//, 'Failed auto_link_email_addresses test');
$this->assertEqual($text->strip_selected_tags('sending <b>email</b> to <a href="mailto:salavert@example.com">salavert@example.com</a>', 'a'), 'sending <b>email</b> to salavert@example.com');
//, 'Failed auto_link_email_addresses test');
$this->assertEqual($text->auto_link('email sent to salavert@example.com from http://www.thebigmover.com', 'all'), 'email sent to <a href=\'mailto:salavert@example.com\'>salavert@example.com</a> from <a href="http://www.thebigmover.com">http://www.thebigmover.com</a>');
$this->assertEqual($text->auto_link('email sent to salavert@example.com', 'email_addresses'), 'email sent to <a href=\'mailto:salavert@example.com\'>salavert@example.com</a>');
$this->assertEqual($text->auto_link('email sent from http://www.thebigmover.com', 'urls'), 'email sent from <a href="http://www.thebigmover.com">http://www.thebigmover.com</a>');
$this->assertEqual($text->strip_tags('<a href="nowhere" onclick="javascript:alert(\'oops\');">link</a>'), 'link');
$this->assertEqual($text->markdown('> ## This is a header.
>
> 1. This is the first list item.
> 2. This is the second list item.
>
> Here\'s some example code:
>
> return shell_exec("echo $input | $markdown_script");'), '<blockquote>
<h2>This is a header.</h2>
<ol>
<li>This is the first list item.</li>
<li>This is the second list item.</li>
</ol>
<p>Here\'s some example code:</p>
<pre><code>return shell_exec("echo $input | $markdown_script");
</code></pre>
</blockquote>');
}
示例4: auto_complete_result
/**
* Use this method in your view to generate a return for the AJAX autocomplete requests.
*
* Example action:
*
* function auto_complete_for_item_title()
* {
* $this->items = $Item->find('all', array('conditions' => array('strtolower($description).' LIKE ?', '%' . strtolower($this->_controller->Request->getRawPostData(). '%' ))))
* return $this->_controller->render(array('inline'=> '<?= $javascript_macros->auto_complete_result(@$items, 'description') ?>'));
* }
*
* The auto_complete_result can of course also be called from a view belonging to the
* auto_complete action if you need to decorate it further.
*/
function auto_complete_result($entries, $field, $phrase = nil)
{
/**
* @todo: check the function h() used on ruby version instead of @$entry[$field]
*/
if (empty($entries)) {
return '';
}
foreach ($entries as $entry) {
$items[] = array_map(TagHelper::content_tag('li', !empty($phrase) ? TextHelper::highlight($entry[$field], $phrase) : @$entry[$field]));
}
return TagHelper::content_tag('ul', array_unique($items));
}