当前位置: 首页 > 知识库问答 >
问题:

Joomla中的双冒号和下划线是什么意思?

邬浩涆
2023-03-14

我正在学习基本的PHP,试图阅读JOOMLA核心文件并对其有一些基本的了解,但我遇到了很多运算符,如“:”等,我不懂。

我在谷歌做了一些研究,有很多关于双冒号(::)的解释,但在“::”上几乎什么都没有,包含这个操作符的文件之一是joomla site root/mod_login/tmpl/default。php,行是

<form action="<?php echo JRoute::_('index.php', true, $params->get('usesecure')); ?>" method="post" id="login-form">

那么这意味着什么呢?是“JRoute::(('index.php',true,$params-

共有3个答案

尹光辉
2023-03-14

双冒号称为作用域解析运算符,用于调用静态类方法或属性。下划线没有任何含义,但通常用于字符串翻译的

徐卓
2023-03-14

双冒号用于面向对象编程。如果你对编程不熟悉,对象在重用代码方面非常有用,一旦你对编程更熟悉,就绝对值得研究...那是如果你还没有经验的话。希望有帮助!

-弗兰克

窦凯定
2023-03-14

e:: 是作用域解析运算符,它允许访问静态、常量和重写属性。所以,在Joomla的例子和你的问题中,它正在访问一个名为_的类静态方法。

下划线_实际上是方法的名称。

在Joomla中,你会发现很多类实现了下划线方法,例如默认的文本翻译实用程序:

echo JText::_('COM_MYCOMPONENT_SORT_BTN_LABEL');  // This is the most commonly used one.

JHTML是一个例子,其中[JHTML::_][2]就像一个类加载器,根据作为代码键

echo JHtml::_('behavior.tooltip');
echo JHtml::_('behavior.formvalidation');
echo JHtml::_('sliders.panel', JText::_($fieldset->label), $fieldset->name);
echo JHtml::_('link', JHelp::createUrl('JHELP_GLOSSARY'), JText::_('COM_ADMIN_GLOSSARY'), array('target' => 'helpFrame'));

JLanguage是一个Joomla类,它有一个下划线方法,您可能会看到该方法在各地使用,但与JRoute[JText][4][JHTML][5]不同,它不是静态调用的。例如

$lang = JLanguage::getInstance($toUser->getParam('admin_language', $default_language), $debug);
$lang->load('com_messages', JPATH_ADMINISTRATOR);
$subject = sprintf ($lang->_('COM_MESSAGES_NEW_MESSAGE_ARRIVED'), $sitename);
 类似资料:
  • 问题内容: CSS 中的双冒号()是什么意思? 例如: 问题答案: 这意味着 伪元素 选择器。这意味着右边的 元素 在普通DOM中不存在,但是可以选择。 伪元素由两个冒号(::)组成,后跟伪元素的名称。 它最初只有一个冒号,而是改为从区分其 伪类 (如,,等)。最好使用for 和伪元素,因为单个冒号具有更好的浏览器支持,即在较早的IE版本中。

  • 问题内容: 可以解释一下在Python中使用对象名称前加下划线的含义吗?另外,说明单首和双首下划线之间的区别。无论所讨论的对象是变量,函数,方法等,该含义是否保持不变? 问题答案: 单下划线 类中带有下划线的名称仅是为了向其他程序员表明该属性或方法旨在私有。但是,名称本身并没有做任何特别的事情。 引用PEP-8: :“内部使用”指标较弱。例如,不导入名称以下划线开头的对象。 双下划线(名称改写)

  • 本文向大家介绍python中单下划线和双下划线分别是什么?相关面试题,主要包含被问及python中单下划线和双下划线分别是什么?时的应答技巧和注意事项,需要的朋友参考一下 name:一种约定,python内部的名字,是用来与用户自动以的名字区分开,防止冲突

  • 我发现这个程序web.archive.org:http://baiyunmanor.com/blog/work/get-current-date-time-in-dos-batch-file/ 但我不知道这句台词 到底是什么意思?

  • 问题内容: 操作数是什么意思,更具体地说是Python? 有人可以解释如何阅读此代码段吗? 问题答案: 更新的答案 在问题的上下文中,我们正在处理伪代码,但是从Python 3.8开始 ,它实际上是一个有效的运算符,它允许在表达式中分配变量: 有关更多详细信息,请参见PEP 572。 原始答案 您发现的是 伪代码 伪代码 是计算机程序或其他算法的工作原理的非正式高级描述。 实际上是赋值运算符。在P

  • 问题内容: 而且我似乎无法理解这种变量声明: 究竟在做什么,为什么他们这样声明变量而不是 (我发现它是Go by Example:Maps的一部分) 问题答案: 它避免了必须为返回值声明所有变量。 它称为 空白标识符 。 如: (另一个’ ‘用例用于导入) 由于它丢弃了返回值,因此在您只想检查返回的值之一时很有用,例如“ EffectureGo,map ”中所示的“如何测试映射中键的存在? 要在地