__在php中,它做了什么?

时间:2014-05-30 15:02:12

标签: php prestashop

我正在尝试在Prestashop的类别块中添加tinymce。 (1.4.7.3) 我发现以下片段可以解决这个问题,但是我遇到了一些错误。

<?php

class Category extends CategoryCore
{
    public function getTranslationsFieldsChild() {
        self::validateFieldsLang();

        $fieldsArray = array('name', 'link_rewrite', 'meta_title', 'meta_keywords', 'meta_description');
        $fields = array();
        $languages = Language::getLanguages();
        $defaultLanguage = Configuration::get('PS_LANG_DEFAULT');
        foreach ($languages as $language)
        {
            $fields[$language['id_lang']]['id_lang'] = $language['id_lang'];
            $fields[$language['id_lang']][$this->identifier] = intval($this->id);
            $fields[$language['id_lang']]['description'] = (isset($this->description[$language['id_lang']])) ? Tools::htmlentitiesDecodeUTF8(pSQL($this->description[$language['id_lang']], true)) : '';
            foreach ($fieldsArray as $field)
            {
                if (!Validate::isTableOrIdentifier($field))
                    die(Tools::displayError());

                __regexoperators___ /*Check fields validity */
                if (isset($this->{$field}[$language['id_lang']]) AND !empty($this->{$field}[$language['id_lang']]))
                    $fields[$language['id_lang']][$field] = pSQL($this->{$field}[$language['id_lang']]);
                elseif (in_array($field, $this->fieldsRequiredLang))
                    $fields[$language['id_lang']][$field] = pSQL($this->{$field}[$defaultLanguage]);
                else
                    $fields[$language['id_lang']][$field] = '';
            }
        }
        return $fields;
    }
}

我想知道

是什么
__regexoperators___

完全正确。

我的php版本是否可能不知道如何处理“__”?

我可以用函数调用替换“__”吗?

提前致谢

1 个答案:

答案 0 :(得分:3)

在这种情况下,它没有做任何事情。它只是使用jQuery Litelighter插件突出显示您复制/粘贴该代码的blog post代码段的副产品。

如果您要在HTML源代码中搜索相同的代码段,即没有语法突出显示,您会看到__regexoperators___没有出现在那里。

查看jQuery Litelighter plugin source code也会显示他们正在使用下划线分隔标记进行解析。