我为Doctrine DQL创建了自定义DQL函数:
class Translate extends FunctionNode {
public $field;
public function getSql(SqlWalker $sqlWalker) {
$query = "TRANSLATE(" . $this->field->dispatch($sqlWalker) . ", 'àâäãáåÀÁÂÃÄÅçÇéèêëÉÈÊËîïìíÌÍÎÏñÑôöðòóÒÓÔÕÖùúûüÙÚÛÜýÿÝ', 'AAAAAAAAAAAACCEEEEEEEEIIIIIIIINNOOOOOOOOOOUUUUUUUUYYY')";
return $query;
}
public function parse(Parser $parser) {
$parser->match(Lexer::T_IDENTIFIER);
$parser->match(Lexer::T_OPEN_PARENTHESIS);
$this->field = $parser->StringPrimary();
$parser->match(Lexer::T_CLOSE_PARENTHESIS);
}
}
Run Code Online (Sandbox Code Playgroud)
它在使用时似乎运行良好.
但是如果字符串参数包含超过307个字符,则它不起作用.没有错误,但脚本正在结束.
$query = $this->createQueryBuilder('...');
$query->addSelect("TRANSLATE('less than 307 chars')"); // working
$query->addSelect("TRANSLATE('more than 307 chars')"); // NOT working
Run Code Online (Sandbox Code Playgroud)
我如何使用超过307个字符?
我正在使用Joomla 3.3.3为我们公司构建一个Intranet站点.
我已经将VM配置为使用带有标准LAMP堆栈的Ubuntu 14.04运行.我还安装了Joomla,我可以使用我们公司的Active Directory(用户可以从我们网络上的任何机器登录该站点,Joomla可以识别它们).
我现在正在尝试实施SSO,以便我们的员工在登录到他们的工作站时不需要登录该站点,并且通过我的故障排除,我将其缩小到"REMOTE_USER"变量,而不是填充APACHE服务器(该变量甚至没有出现在我的phpinfo()页面上)
我认为我在Joomla和PHP中工作非常有经验,但我的Apache服务器和Ubuntu技能相当薄弱.
我的用户是否需要在Apache服务器中进行身份验证?我真的只需要Windows机器将Remote_User令牌传递给Joomla,但我不知道如何在Ubuntu中执行此操作.
是否可以使用PHP NumberFormatter类以单数或复数形式显示单词,具体取决于使用该setPattern方法的数值?
这个方法正在使用ICU DecimalFormat库,但我不熟悉它.
page当值大于1时,我想在单词上使用复数:
$sizeFormatter = new NumberFormatter('fr_FR', NumberFormatter::DECIMAL);
$sizeFormatter->setPattern('#0.# page(s)');
Run Code Online (Sandbox Code Playgroud) tu是否可以在Symfony2中使用@ParamConverter批注将通过$ _POST请求发送的参数转换为Entity?
symfony2文档中给出的所有示例都将从路由中定义的参数转换实体。
设置类似的东西:
/**
* @Route("/")
* @ParamConverter("user", class="BvStandardServiceBundle:User", options={"id" = "userId"})
*/
public function userAction(User $user)
{
}
Run Code Online (Sandbox Code Playgroud)
如果我使用userId$ _POST参数中的ID调用此路由,则会导致:
无法猜测如何从请求信息中获取Doctrine实例。
我想使用ICU MessageFormat 处理复杂参数来翻译文本,但我找不到为空字符串/空参数添加选择条目的方法:
{variable, select,
empty {The translation when variable is null / blank}
other {The translation when variable is not null}
}
Run Code Online (Sandbox Code Playgroud)
我想empty在给定variable空值时显示翻译,但我无法找到正确的语法来执行此操作。
这会返回语法错误:
{variable, select,
'' {The translation when variable is null / blank}
other {The translation when variable is not null}
}
Run Code Online (Sandbox Code Playgroud)
我正在使用 ICU MessageFormat 和 PHP。
我正在使用实体存储库创建查询,它似乎存在内存泄漏。
在我的实体存储库类中:
echo 'mem 1 : ' . (memory_get_usage()/1024/1024) . "<br />\n";
$query = $this->createQueryBuilder('a')->select('a','b','c','...');
echo 'mem 2 : ' . (memory_get_usage()/1024/1024) . "<br />\n";
$r = $query->getQuery()->getResult();
echo 'mem 3 : ' . (memory_get_usage()/1024/1024) . "<br />\n";
$this->clear(true);
$query->getQuery()->free(true);
unset($r);
echo 'mem 4 : ' . (memory_get_usage()/1024/1024) . "<br />\n";
Run Code Online (Sandbox Code Playgroud)
输出:
内存 1:5.0805282592773
内存 2:5.0998611450195
内存 3:91.49528503418
内存 4:77.939567565918
为什么释放内存后内存没有恢复到初始大小(5 MB)?
而且只能从 91 传到 77。
如果未提交相应的表单输入,我会遇到 symfony2 表单的问题,该表单会通过 null 覆盖我的实体数据。
下面是一个例子:
表格类型:
$builder
->add('customerid', 'text')
->add('field1', 'text')
->add('field2', 'text')
...
Run Code Online (Sandbox Code Playgroud)
控制器 :
$customer = new Customer();
$customer->setId('the customerID');
$customerForm = $this->createForm(new CustomerType(), $customer);
if ($request->getMethod() == 'POST') {
$customerForm->bind($request);
...
}
Run Code Online (Sandbox Code Playgroud)
在视图中,我不呈现 customerid 文本字段。仅提交其他字段。
提交表单后,$customerForm->bind($request); 即使没有为其提交空值,也会通过 null 覆盖先前设置的 customerID。
如果未呈现输入字段,有没有办法不覆盖该值?
这里似乎是同样的问题:https : //github.com/symfony/symfony/issues/1341 提交了补丁,但我没有找到有关如何使用它的文档。
谢谢
我正在尝试订购一个实体形式字段女巫被翻译.
我正在使用symfony翻译工具,因此我无法使用SQL语句对值进行排序.有没有办法在加载和翻译后对值进行排序?
也许使用表单事件?
$builder
->add('country', 'entity',
array(
'class' => 'MyBundle:Country',
'translation_domain' => 'countries',
'property' => 'name',
'empty_value' => '---',
)
)
Run Code Online (Sandbox Code Playgroud) 我搜索了很多,但无法得到答案.
我想保留复制文本pdf到WYSIWYG editor(Ckeditor).我可以在从Word文件复制时保留样式,但从复制时它的工作方式不同PDF.
原来pdf是这样的(我不能发布图片作为声誉< 10,请参考链接):
复制粘贴后显示以下输出:
请为PDF到RTF转换建议插件或代码段.
谢谢
我的一个客户希望在他的 Wordpress 网站上有一个“本月项目”功能。但是带有存档页面。
我的想法是创建一个自定义帖子类型并将其称为项目。在这里,客户可以管理项目并制作新项目。
使用这段代码,我可以从最新的项目帖子中获取内容,并将该内容放在“本月项目”主页面上,而所有过去的项目都在存档页面上。
$latest_cpt = get_posts("post_type=projects&numberposts=1");
$my_postid = $latest_cpt[0]->ID; //This is page id or post id
$content_post = get_post($my_postid);
$content = $content_post->post_content;
$content = apply_filters('the_content', $content);
$content = str_replace(']]>', ']]>', $content);
echo $content;
Run Code Online (Sandbox Code Playgroud)
这有效......但不是真的。
项目页面是使用可视化作曲家构建的。并且一些元素具有背景颜色或填充。视觉作曲家为这些元素提供了独特的类,如
.vc_custom_1516702624245
并在页面加载时添加自定义样式标签。像这样的东西
<style type="text/css" data-type="vc_shortcodes-custom-css">
.vc_custom_1516711125312 {
padding-top: 75px !important;
padding-bottom: 75px !important;
background-color: #f3f5f6 !important;
}
.vc_custom_1516702624245 {
background-color: #f3f5f6 !important;
}
.vc_custom_1516711013808 {
margin-top: -106px !important;
}
.vc_custom_1516702490896 {
padding-left: 50px !important;
}
.vc_custom_1516703325534 {
margin-top: -15px !important;
}
.vc_custom_1516702744160 { …Run Code Online (Sandbox Code Playgroud) 我想克隆一个无序列表的第一级只有不超过任何子女。我的清单如下。
<ul class='leftNav'>
<li>A</li>
<li>D</li>
<li>C<ul>
<li>1</li>
<li>2</li>
<li>3</li>
</li>
<li>D</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
我正在使用以下内容克隆列表项,但这是克隆所有内容:
var leftNav = $(".leftNav").children().clone();
Run Code Online (Sandbox Code Playgroud)
我想要的只是这个:
<li>A</li>
<li>D</li>
<li>C</li>
<li>D</li>
Run Code Online (Sandbox Code Playgroud)
这可以用 jQuery 实现吗?
PHP 7.1将引入void函数类型。
https://wiki.php.net/rfc/void_return_type
在哪些情况下,明确指定函数为“ void”类型而不是简单地return;没有精度是有用的吗?