我有一个表A,有一个主键ID.
现在我想要浏览A中的所有行.
我发现了'对于A中的每个记录',但这似乎不是你在MySQL中的表现.
我想要获取一个字段并对其进行转换,将其插入另一个表中,然后更新某些行的字段.我可以将select部分和插入放在一个语句中,但我不知道如何在那里获得更新.所以我想循环.而对于练习,我不想使用除MySQL以外的任何东西.
编辑
我会很感激一个例子.
并且不需要将其纳入程序中.
编辑2
好吧想想这个场景:
表A和B,每个都有字段ID和VAL.
现在这是我想要做的伪代码:
for(each row in A as rowA)
{
insert into B(ID, VAL) values(rowA[ID], rowA[VAL]);
}
Run Code Online (Sandbox Code Playgroud)
基本上使用循环将A的内容复制到B中.
(这只是一个简化的例子,当然你不会为此使用循环.)}
我下载了symfony2,我可以从app_dev.php开始运行它.
但是当我从app.php开始时,我得到一个错误页面404.
app.php虽然当然在那里但它会被执行.
错误发生在app.php的最后一行代码之后的某处:
$kernel->handle(Request::createFromGlobals())->send();
Run Code Online (Sandbox Code Playgroud)
我想我必须配置一个开关.
编辑:
正如GeLo所建议的,我将生产版本的路由添加到app/config/routing.yml.
_welcome:
resource: "@AcmeDemoBundle/Resources/config/routing.yml"
prefix: /
Run Code Online (Sandbox Code Playgroud)
我用内容创建了src/Acme/DemoBundle/Resources/config/routing.yml:
bla:
pattern: /
defaults: {_controller:AcmeDemoBundle:Demo:index}
Run Code Online (Sandbox Code Playgroud)
在DemoController::indexAction()我置于die(__FILE__);
没有; 我仍然从app.php获得404!
编辑答案:
./app/console --env=prod cache:clear
Run Code Online (Sandbox Code Playgroud)
做了伎俩.介意env参数.
我有以下查询:
$latestcontent = $em->createQuery('
SELECT c.title, c.content, c.lastedit, a.firstname, a.surname
FROM ShoutMainBundle:Content c, ShoutMainBundle:Admin a
WHERE c.author = a.id
ORDER BY c.lastedit ASC'
);
Run Code Online (Sandbox Code Playgroud)
我需要做的是限制从此查询返回的记录数量.但是,当我将LIMIT 10添加到SQL查询时,它会返回此错误:
错误:字符串的预期结束,得到'LIMIT'.
所以,我看了一下,发现你可以添加->limit(10)到代码中(在查询之后).但是这会引发这个PHP错误:
Fatal error: Call to undefined method Doctrine\ORM\Query::limit() in C:\wamp\www\src\Shout\AdminBundle\Controller\DefaultController.php on line 22
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
首先要做的事情:
重要:XDebug也在Apache和我的Win7防火墙上正确配置.我知道b/c我可以使用Eclipse进行调试.
所以我失败的似乎是PHPStorm的基本配置.
让我来介绍一些细节:
我要调试的文件是index.php:
无论我拼凑什么......我得到了一些错误消息,比如"等待来自JetBrains PhpStorm的连接..."或者PHPStorm要求我提供Mozillas profile.ini,即使我在网页浏览器中将Chrome配置为默认值.
所以我将建立一个新项目,希望有人告诉我我的配置有什么问题.
运行/编辑配置/默认值/ PHP远程调试:
服务器:
C:\ dev\sf\Symfony =>/mnt/hgfs/sf/Symfony(也试过/ Symfony - b/c PHPStorm不应该关心/ Symfony上面的任何东西!?)
运行/编辑配置/默认值/ PHP Web应用程序:
现在我选择:Run/Debug .../1.index.php
我被问到:Mozilla的profile.ini ......但我找不到它
它在哪里 ... ?
到目前为止,我已经开始使用PHPStorm启动Chrome了.但也许我先解决这个问题.那么如何让Firefox运行起来呢?我也使用Firefox与Eclipse ...没有问一个profile.ini的问题.
由于自动代码完成,我经常发现自己在括号之间,必须到达行的末尾才能添加不可避免的分号.
然后我必须向右移动,向右移动,击中End,然后再次返回键盘的主要部分以进入分号.
我认为这对我的打字流程感到不安,特别是在笔记本上书写的时候,因为那时我的那些动作非常低效.
在主键盘区域内是否已有一个用于到达行尾或添加分号的组合键?或者是否可以在这些方面配置PhpStorm?
(我正在使用PhpStorm,但我在这个问题上添加了IntelliJ IDEA标签,因为我猜他们在这些基本功能方面会有类似之处.)

所以有老梨安装程序和pyrus,它是PEAR的新包管理器......或者它是PEAR2 ......至少它更快更好.
还有旧的package.xml版本<2.0和新的package.xml> = 2.0 ...是与包管理器相关的版本......梨安装程序还是pyrus?
实际上PEAR2是什么?为什么有http://pear2.php.net/并且整个网站都有一个与版本无关的'PEAR'?它实际上是一样的吗?
有人可以向我解释PEAR/PEAR2/package.xml <和> = 2.0/pear installer/Pyrus(.phar)是如何相互关联的吗?
编辑1:
基本上状态Pyrus比老梨安装者更好.
Pyrus不再支持package.xml 1.0版
那么什么是> 1.0?
此外,Pyrus已经引入了对PEAR2包的支持,这些包可以提取到磁盘,然后使用Pyrus进行升级.
对不起......但那个英语是英语,还是只是令人困惑的说法?似乎说Pyrus还支持PEAR ......当然还有PEAR2.仍然要回答主要问题 - 什么是PEAR2?
编辑2:
这是一个2年前的展望和幻灯片演示......所以大多只是关键词和短语.
所以PEAR2是一个概念改革......以哪种方式?
有一个新的安装程序...... Pyrus?......但是Pyrus 引入了对PEAR2的支持的另一个消息来源是不是?
包分发的约束似乎已经改变......只有稳定且PHPUnit覆盖率至少为50%......
其余部分对我没有明确的意义.
我很快就会加入一个已经开发了几年的PHP项目.这将是巨大的,稀疏文档,许多文件,成堆的代码,没有合理的质量水平是预期的.
您将如何收集尽可能多的有关正在发生的事情的信息?
自动加载不被预期的,至少不广泛,所以 inclued可能做好揭示的相互依赖关系.
使用phpDocumentor摘要项目文件可能会了解存在哪些类/方法/函数.
也许phpCallGraph用于方法/函数关系.
使用XDebug分析一些通用用例, 以了解层次结构和概念.
检查重要的日志文件...检查警告,弃用的用法,错误.
也许提取所有注释并将它们处理成html文件.
没有涵盖单元测试,数据库,....
你会怎么做?您对提到的工具有什么经验可以充分利用它们?
您可以假设任何必要的条件.
提取哪些统计信息可能有用?
有人有这些工具的经验吗?
编辑从"PHP工具的质量检查":
来自Bryan Waters的编辑2回答:
检查Apache日志和Google Analytics数据,找出最常请求的URL,然后分析使用XDebug分析和KCachegrind等工具发生的情况.
请参阅他对具体技术的回答.
为PHP项目设置部署/构建/ CI循环 - 由Pekka建议
编辑3
刚刚发现这篇由Gabriele Santini撰写的PDF文章 - "代码的统计分析 - 收听你的PHP代码".这就像一个金矿.
有两个类,我们称之为X和O.属于这些类的许多元素在xy平面中展开.下面是两个类不可线性分离的示例.无法绘制直线,在线的每一侧完美地划分X和Os.

一般来说,如何确定两个类是否可线性分离?.我对一种算法感兴趣,该算法不对元素的数量或它们的分布做出假设.当然优选最低计算复杂度的算法.
我在Ubuntu 13.10上使用Octave 3.8,而"fltk"用于图形效果不佳.所以我总是通过命令切换到"gnuplot":
graphics_toolkit("gnuplot")
Run Code Online (Sandbox Code Playgroud)
如何配置Octave默认使用"gnuplot"?