【php symfony异常处理/错误处理】教程文章相关的互联网学习教程文章

php – Symfony2表单到JSON结构【代码】

如何将Symfony2表单转换为JSON数据结构?寻找合适的捆绑给了我没有结果; 例:$builder->add('name', 'text')->add('password', 'password') ;会导致类似的事情:{fields: {name: {type: 'text'},password: {type: 'password'}} }在$form = $this-> createForm(new FormType(),new Entity())之后迭代表单中的每个元素没有帮助,找不到可以在表单构建器中定义的某些属性.解决方法:我假设您希望在发布表单后在控制器中获取此信息,在这种...

php – Symfony3 – 处理JSON Rest API错误的最佳方法?【代码】

我正在使用symfony3开发一个简单的Rest API(仅限JSON).我使用Forms来验证实体,但我无法找到一个足够好的方法来处理表单错误并返回一个有意义的json错误响应.以下是我的控制器的示例操作:/*** @Route("/user/add" , name="addUser")* @Method({"POST"})** @param Request $request* @return JsonResponse*/ public function registerAction(Request $request) {$user = new User();$form = $this->createForm(UserType::class, $us...

php – 如何在Symfony3中的app控制器中运行bundle命令?【代码】

介绍 在我使用的个人项目中: > Symfony v3.2.7> PHP v7.1.1> CravlerMaxMindGeoIpBundle> How to Call a Command from a Controller>在Windows 10 Pro开发机器上 目标 我想成功运行CravlerMaxMindGeoIpBundle的命令php bin / console cravler:maxmind:geoip-update from controller. 问题 目前我已经设置了CravlerMaxMindGeoIpBundle包和命令php bin / console cravler:maxmind:geoip-update在命令行中运行正常. 然后我按照官...

php – 使用Symfony获取未登录用户的安全令牌【代码】

如何为任何用户获取安全令牌,而不仅仅是当前登录的用户? 我希望能够从从数据库中提取的用户调用isGranted()解决方法:isGranted()来自安全服务,因此很难/没有必要使用它来获取角色而不调整会话状态. 不要误会我的意思,这绝对是可能的……这样可行,例如:public function strangeAction() {// Get your User, however you normally get it$user = $userRepository->find($id);// Save the current token so you can put it back lat...

php – 如何使用symfony2中的FileType输入处理编辑表单【代码】

在symfony2应用程序中,实体Message与文档具有一对多的关系.文档表示用户上传.我创建了一个表单.我意识到两种形式:MessageForm和DocumentForm. DocumentForm位于MessageForm中的集合FormField中.上传和处理文件确实有效. 但是,如果我想编辑实体消息,则表单包含与存在的文档一样多的空FileInput.期望的行为是: > FileInputs上传新文件>现有文件的文件名(链接)>可以删除现有文件 这应该在表单内处理.提交表单时应进行更改. 怎么能实...

php – 在Symfony 2中创建具有相同表单的2个不同实体【代码】

是否可以创建具有相同形式和操作的2个相关实体?如果有,怎么样? 我想在1step注册中创建一个新用户及其相关问卷. 谢谢,卢卡解决方法:您可以为相关实体(问卷调查)创建表单类型,并将其用作用户表单类型中的字段类型.它被称为表单嵌套.// src/Acme/DemoBundle/Form/Type/QuestionnaireType.php namespace Acme\DemoBundle\Form\Type;use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface;class...

php – 如何获取Symfony控制台应用程序的运行路径?【代码】

有没有办法在Symfony Console应用程序中获取运行路径?例如(假设PATH中的php解释器):cd /tmp php /home/user/myapplication/app/console.php mycommand应该从/ tmp启动console.php返回/ tmp.解决方法:getcwd()会做你需要的.您可以从任何目录执行app / console,PHP将知道它是哪一个. 我使用以下示例来验证这一点.<?phpnamespace Acme\DemoBundle\Command;use Symfony\Bundle\FrameworkBundle\Command\ContainerAwareCommand; use S...

php – 如何在symfony2中使用doctrine findOneBy方法返回一个数组而不是一个对象?【代码】

我有一种情况,我想用symfony2中的doctrine中的findOneBy($id)方法查询数据库.$namePosting = $this->getDoctrine()->getRepository('MyBundle:Users')->findOneById($userPosting);结果是具有受保护属性的对象.我想直接将它返回一个数组.如何才能做到这一点 ?解决方法:findOneBy(array())将始终返回null或object. 但你可以使用findById($userPosting)或findBy(array(‘id’=> $userPosting))而它将返回一个数组,例如:$this->getD...

php – 如何在Symfony 2.7中关闭用户的所有会话?【代码】

用户更改密码后(在恢复密码操作中),我需要使与该用户连接的所有会话无效(他可能登录多个浏览器/设备).因此,在我使用新密码在数据库中保存用户之后,我需要关闭在该用户的不同浏览器/设备中可能处于活动状态的所有会话.我试过这个:$token = new UsernamePasswordToken($user, null, 'main', $user->getRoles()); $this->get('security.token_storage')->setToken($token);还尝试过:$this->get('security.token_storage')->getToken...

php – Symfony返回错误:缺少一些参数.请提供【代码】

我正在尝试在wamp服务器上安装symfony,我正在通过composer安装.我在cmd中尝试了以下命令$composer create-project symfony/framework-standard-edition sym2上面的命令是在wamp上正确安装symfony最新版本,但最后它返回错误或请求编辑内容. 创建“app / config / parameters.yml”文件` 我附上cmd屏幕截图作为参考,可以任何指导我如何解决这个问题.我还在安装symfony之前更新了composer phar. 解决方法:这不是一个错误(错误),它是一...

php – Symfony / Console:如何使用多个进度条?【代码】

我有一个Symfony / Console的命令,它使用Guzzle Pool一次下载几个文件.我已经有Guzzle报告每个文件的download progress,这很好. 现在我想使用Symfony / Console的ProgressBar helper来改进它.问题是我为ProgressBar找到的所有示例都只使用一个进度条.我需要几个独立的进度条 – 每个下载一个.你能给我一些提示如何实现吗?解决方法:我在这里找到了一些东西:[Console] A better progress bar #10356use Symfony\Component\Console\...

php – Doctrine – Symfony查询错误【代码】

我有一个错误,我不知道如何解决它.$query = $entityManager->createQuery("UPDATE AppBundle:ChangeAPI SET `key`='asd123' WHERE `id` = 1"); $query->execute();我的AppBundle:ChangeAPI/*** @ORM\Entity* @ORM\Table(name="api")*/class ChangeAPI{/*** @ORM\Column(type="integer")* @ORM\Id* @ORM\GeneratedValue(strategy="AUTO")*/protected $id;/*** The date on which the shipment has been created** @ORM\Column(type...

php – Symfony2 – PdfBundle不能正常工作【代码】

使用Symfony2和PdfBundle生成动态PDF文件,我确实无法生成文件. 按照文档说明,我已经设置了所有捆绑的东西: autoload.php:'Ps' => __DIR__.'/../vendor/bundles', 'PHPPdf' => __DIR__.'/../vendor/PHPPdf/lib', 'Imagine' => array(__DIR__.'/../vendor/PHPPdf/lib', __DIR__.'/../vendor/PHPPdf/lib/vendor/Imagine/lib'), 'Zend' => __DIR__.'/../vendor/PHPPdf/lib/vendor/Zend/library', 'ZendPdf' => __DIR__.'/../vendor/P...

php – Symfony2 – 如何从另一个控制器渲染视图【代码】

我有两个控制器,主页和安全. 在主页中,我显示一个视图,在安全性中,我正在做一些事情,其中??一个是电子邮件地址验证. 我想要的是,当电子邮件验证码无效时,显示带有flash消息的主页.为此,我将从安全控制器渲染HomepageController的indexAction,将其作为flash消息的参数. 如何才能做到这一点?我可以从另一个控制者那里渲染一条路线或一个动作吗? 先感谢您.解决方法:我认为不应该在安全控制器中进行检查.在我看来,正确的地方是单独的...

php – Symfony2 – MinLength验证不起作用 – 找不到MinLength【代码】

我想在我的symfony项目中使用MinLength验证器. 这是我如何使用它:use Symfony\Component\Validator\Constraints\MinLength; class RegisterNewUser {protected $password;public static function loadValidatorMetadata(ClassMetadata $metadata){if( isset( $metadata->properties["password"] ) ) unset($metadata->properties["password"]);$password_blank = new NotBlank();$password_min = new MinLength(5);$passwo...