如果我想创建一个路径,其中年,月和日是变量,如何定义如果这些变量为空,则应采用当前日期?
像这样(不能确定......)
blog:
path: /blog/{year}/{month}/{day}
defaults: { _controller: AcmeBlogBundle:Blog:index,
year: current_year,
month: current_month
day: current_day
}
Run Code Online (Sandbox Code Playgroud)
我想过定义两条不同的路线,就像这样
blog_current_day:
path: /blog
defaults: { _controller: AcmeBlogBundle:Blog:index }
blog:
path: /blog/{year}/{month}/{day}
defaults: { _controller: AcmeBlogBundle:Blog:index }
Run Code Online (Sandbox Code Playgroud)
但如果我再打电话给blog_current_day我的控制器
public function indexAction(Request $request, $year, $month, $day) {
// ...
}
Run Code Online (Sandbox Code Playgroud)
将抛出异常,因为缺少年,月和日.
有什么建议?
我有两个DateTime对象
$lastDate = $entity->getDate(); // is a DateTime with same format as $today
$today = \DateTime::createFromFormat('!Y-m-d', date('Y-m-d'));
Run Code Online (Sandbox Code Playgroud)
现在我想检查一下,如果这两个日期是同一天,或者它们是否相隔超过一天(但这也应该包括$lastDay昨天晚上11点和$today新的一天凌晨1点).
到目前为止我所拥有的是什么
$diff = $today->diff($lastDate);
if($diff->days > 0) {
$return = false;
} else {
$return = true;
}
Run Code Online (Sandbox Code Playgroud)
问题是:这似乎可以计算出日期是否超过彼此超过24小时,并且只有true在这种情况下才会设置.
我可以考虑通过比较来比较它们$date->format('d');,但这意味着我也会检查年份和月份.我知道这样可以完美地工作,但这将是一个五行或左右.
所以我的问题是:有没有更有效的方法来检查这个?这样的任何操作diff()都会给我一个单行的结果?
最初设计项目时,我们有几个实体到目前为止尚未使用(并且我们不打算在不久的将来实现它们)。嗯,我想从我的项目中删除它们。我将这样进行(手动执行所有步骤):
src/Resources/config/doctrinesrc/Entity我想知道的是:是否有任何例程(例如控制台命令)可以支持此过程?例如,如果我跑步
php app/console doctrine:schema:update --dump-sql
Run Code Online (Sandbox Code Playgroud)
删除所有关系并删除文件后,得到删除相应表的SQL语句吗?
使用NotEqualTo验证器约束时,我想定义多个值.
这是它用于一个值的方式:
# src/SocialBundle/Resources/config/validation.yml
Acme\SocialBundle\Entity\Person:
properties:
age:
- NotEqualTo:
value: 15
Run Code Online (Sandbox Code Playgroud)
但是如何定义一组(数组)值?我试过了
- NotEqualTo:
value: 15
value: 16
value: 17
Run Code Online (Sandbox Code Playgroud)
和
- NotEqualTo:
value: [15, 16, 17]
Run Code Online (Sandbox Code Playgroud)
但这两种方法都不起作用.
我有一个包含4个数组的数组,每个数组都有一个值.
array(4) {
[0]=>
array(1) {
["email"]=>
string(19) "test01@testmail.com"
}
[1]=>
array(1) {
["email"]=>
string(19) "test02@testmail.com"
}
[2]=>
array(1) {
["email"]=>
string(19) "test03@testmail.com"
}
[3]=>
array(1) {
["email"]=>
string(19) "test04@testmail.com"
}
}
Run Code Online (Sandbox Code Playgroud)
什么是最好的(=最短的本机PHP函数首选)方法来展平数组,以便它只包含电子邮件地址作为值:
array(4) {
[0]=>
string(19) "test01@testmail.com"
[1]=>
string(19) "test02@testmail.com"
[2]=>
string(19) "test03@testmail.com"
[3]=>
string(19) "test04@testmail.com"
}
Run Code Online (Sandbox Code Playgroud) 有没有一种简单的方法来创建一个新的Wildfly服务器实例.
在JBoss AS5中你所要做的就是创建一个默认或全部的副本并启动jboss:
run.sh -c [New instance name]
Run Code Online (Sandbox Code Playgroud)
没有这样的选择 standalone.sh
我目前正在尝试将我的Symfony2应用程序升级到Symfony3.我有一个SecurityController覆盖了FOSUserBundle\SecurityController:
namespace Acme\MyBundle\Controller;
use Symfony\Component\DependencyInjection\ContainerAware;
class SecurityController extends ContainerAware
{
// ...
}
Run Code Online (Sandbox Code Playgroud)
但我得到一个ClassNotFoundException:
尝试从命名空间"Symfony\Component\DependencyInjection"加载类"ContainerAware".
您是否忘记了另一个命名空间的"use"语句?
是否有任何我在升级说明中找不到的更改.有人能指出我的方法来解决这个问题吗?
我的实体之间有多对多的关系:PurchaseOrder和Supplier.当我想Supplier在我的Symfony项目中添加订单时,我总是会收到以下错误消息:
属性"供应商"在"Acme\AppBundle\Entity\PurchaseOrder"类中不公开.也许你应该创建方法"setSuppliers()"?
当我setSuppliers()在PurchaseOrder实体中自己创建一个函数时:
public function setSuppliers(\Acme\AppBundle\Entity\Supplier $suppliers )
{
$this->suppliers = $suppliers;
return $this;
}
Run Code Online (Sandbox Code Playgroud)
我收到此错误消息:
可捕获致命错误:传递给Doctrine\Common\Collections\ArrayCollection :: __ construct()的参数1必须是类型数组,给定对象,在/ var/www/symfony/vendor/doctrine/orm/lib/Doctrine/ORM中调用/UnitOfWork.php在第519行并在/var/www/symfony/vendor/doctrine/collections/lib/Doctrine/Common/Collections/ArrayCollection.php第47行中定义
有任何想法吗?
/**
* @Route("order/{id}/supplieradd", name="order_supplieradd")
* @Secure(roles="ROLE_ADMIN")
*/
public function newSupplierAction(Request $request, $id)
{
$purchaseOrder = $this->getDoctrine()
->getRepository('AcmeAppBundle:PurchaseOrder')
->find($id);
if (!$purchaseOrder) {
throw $this->createNotFoundException(
'No order found for id '.$id
);
}
$form = $this->createForm(new AddSupplierType(), $purchaseOrder);
// process the form on POST
if ($request->isMethod('POST')) {
$form->bind($request);
if ($form->isValid()) …Run Code Online (Sandbox Code Playgroud) 我在我的CSS文件中有这个
h1, h2, h3, h4 {
color: red;
}
Run Code Online (Sandbox Code Playgroud)
有没有办法用一个语句选择所有标题
h* {
color: red;
}
Run Code Online (Sandbox Code Playgroud) 我的Web根目录上正在运行Mediawiki安装。例如可以通过以下方式访问主页
http://example.com/index.php?title=Main_Page
Run Code Online (Sandbox Code Playgroud)
我想更改它,以便短网址是
http://example.com/Main_Page
Run Code Online (Sandbox Code Playgroud)
我的配置如下
#.htaccess
Options +FollowSymLinks
RewriteEngine On
RewriteRule ^(.*)$ /index.php?title=$1 [PT,L,QSA]
RewriteRule ^.*$ /index.php [L,QSA]
Run Code Online (Sandbox Code Playgroud)
。
// LocalSettings.php
$wgScriptPath = "..";
$wgArticlePath = "/$1";
$wgUsePathInfo = true;
Run Code Online (Sandbox Code Playgroud)
但是,此配置出现500错误。
这是一个有~/user_root/文件夹的服务器。此文件夹包含用户根域的公共HTML文件,例如user-root.com。
该文件夹包含几个子文件夹,例如,在这种情况下~/user_root/example,可以通过上面提到的URL进行访问example.com。
问题是否基于此文件夹/子文件夹层次结构和$wgScriptPath设置?应该
$wgScriptPath = "..";
Run Code Online (Sandbox Code Playgroud)
被这个相对路径以外的东西代替?如果需要更多信息,请告知。