Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenDocCN
zetcode-zh
提交
95278da4
Z
zetcode-zh
项目概览
OpenDocCN
/
zetcode-zh
10 个月 前同步成功
通知
2
Star
157
Fork
40
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Z
zetcode-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
95278da4
编写于
6月 20, 2020
作者:
W
wizardforcel
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
2020-06-20 14:52:55
上级
187e3cd2
变更
9
隐藏空白更改
内联
并排
Showing
9 changed file
with
30 addition
and
30 deletion
+30
-30
docs/symfony/90.md
docs/symfony/90.md
+4
-4
docs/symfony/91.md
docs/symfony/91.md
+6
-6
docs/symfony/92.md
docs/symfony/92.md
+1
-1
docs/symfony/93.md
docs/symfony/93.md
+2
-2
docs/symfony/94.md
docs/symfony/94.md
+2
-2
docs/symfony/95.md
docs/symfony/95.md
+5
-5
docs/symfony/97.md
docs/symfony/97.md
+4
-4
docs/symfony/98.md
docs/symfony/98.md
+4
-4
docs/symfony/99.md
docs/symfony/99.md
+2
-2
未找到文件。
docs/symfony/90.md
浏览文件 @
95278da4
...
...
@@ -12,7 +12,7 @@ Symfony 是一组可重用的 PHP 组件和一个用于 Web 项目的 PHP 框架
在下面的示例中,我们有一个简单的表单,其中有一个输入框用于输入用户名。 如果用户输入的名称无效(空或仅包含空格),则应用将在表单上方显示一个闪烁通知。
**注意
:**
在我们的应用中,我们有一个 GET 表单。 GET 方法被认为是
[
安全
](
https://developer.mozilla.org/en-US/docs/Glossary/safe
)
,因此我们未实现 CSRF 保护。
[
Symfony CSRF 教程
](
/symfony/csrf/
)
涵盖了 Symfony 中的 CSRF 保护。
**注意
**
:
在我们的应用中,我们有一个 GET 表单。 GET 方法被认为是
[
安全
](
https://developer.mozilla.org/en-US/docs/Glossary/safe
)
,因此我们未实现 CSRF 保护。
[
Symfony CSRF 教程
](
/symfony/csrf/
)
涵盖了 Symfony 中的 CSRF 保护。
```
php
$
composer
create
-
project
symfony
/
skeleton
flashmsg
...
...
@@ -40,7 +40,7 @@ $ composer require server maker --dev
```
我们安装了开发 Web 服务器和 Symfony
maker
。
我们安装了开发 Web 服务器和 Symfony
`maker`
。
`src/Service/Validate.php`
...
...
@@ -67,7 +67,7 @@ class Validate
`Validate`
服务检查提供的字符串是否为空或仅包含空格。
**注意
:**
在生产应用中,我们使用一些验证库,例如 Symfony 的
`symfony/validator`
或 PHP Rackit 或 Respect。
**注意
**
:
在生产应用中,我们使用一些验证库,例如 Symfony 的
`symfony/validator`
或 PHP Rackit 或 Respect。
```
php
$
php
bin
/
console
make
:
controller
FormController
...
...
@@ -247,4 +247,4 @@ $ php bin/console server:run
在本教程中,我们在 Symfony 中处理了 Flash 消息。
您可能也对以下相关教程感兴趣:
[
Symfony 简介
](
/symfony/intro/
)
,
[
Symfony 验证教程
](
/symfony/validation/
)
,
[
Symfony 服务教程
](
/symfony/service/
)
,
[
Symfony 表单教程
](
/symfony/form/
)
,
[
PHP 教程
](
/lang/php/
)
或列出
[
所有 Symfony
](
/all/#symfony
)
教程。
\ No newline at end of file
您可能也对以下相关教程感兴趣:
[
Symfony 简介
](
/symfony/intro/
)
,
[
Symfony 验证教程
](
/symfony/validation/
)
,
[
Symfony 服务教程
](
/symfony/service/
)
,
[
Symfony 表单教程
](
/symfony/form/
)
,
[
PHP 教程
](
/lang/php/
)
或列出
[
所有 Symfony 教程
](
/all/#symfony
)
。
\ No newline at end of file
docs/symfony/91.md
浏览文件 @
95278da4
...
...
@@ -8,9 +8,9 @@ Symfony 邮件教程显示了如何在 Symfony 中发送简单邮件。 Symfony
Symfony 是一组可重用的 PHP 组件和一个用于 Web 项目的 PHP 框架。 Symfony 是带有一些商业附加组件的免费软件。 Symfony 的灵感来自 Ruby on Rails,Django 和 Spring Framework。
##
`SwiftMailer`
##
SwiftMailer
`SwiftMailer`
是免费的功能丰富的 PHP 邮件程序。 Symfony 通过其
`symfony/swiftmailer-bundle`
集成了 SwiftMailer。
SwiftMailer
是免费的功能丰富的 PHP 邮件程序。 Symfony 通过其
`symfony/swiftmailer-bundle`
集成了 SwiftMailer。
## Symfony 发送邮件示例
...
...
@@ -18,7 +18,7 @@ Symfony 是一组可重用的 PHP 组件和一个用于 Web 项目的 PHP 框架
### 建立应用
我们首先使用
composer
建立应用。
我们首先使用
`composer`
建立应用。
```
php
$
composer
create
-
project
symfony
/
skeleton
mail
...
...
@@ -112,7 +112,7 @@ class TestMailController extends AbstractController
```
在
`TestMailController
's`
`index()`
方法中,我们发送电子邮件。 请注意,发送电子邮件的代码不应在生产应用的控制器中。 它应该在某种服务。 但是出于简单原因,我们将其保留在此处。
在
`TestMailController
`
的
`index()`
方法中,我们发送电子邮件。 请注意,发送电子邮件的代码不应在生产应用的控制器中。 它应该在某种服务。 但是出于简单原因,我们将其保留在此处。
```
php
public
function
index
(
Request
$request
,
\
Swift_Mailer
$mailer
,
...
...
@@ -137,7 +137,7 @@ $message->setTo('example2@example.com');
```
创建了
`Swift_Message`
。
from 和 to
电子邮件值经过硬编码,以简化此示例。 您可以删除硬编码的值作为练习。 (将源电子邮件设置为参数,从表单中获取目标电子邮件。)
创建了
`Swift_Message`
。
`from`
和
`to`
电子邮件值经过硬编码,以简化此示例。 您可以删除硬编码的值作为练习。 (将源电子邮件设置为参数,从表单中获取目标电子邮件。)
```
php
$message
->
setBody
(
...
...
@@ -347,4 +347,4 @@ flash.addEventListener('click', function () {
您可能也对以下相关教程感兴趣:
[
Symfony 简介
](
/symfony/intro/
)
,
[
Symfony 服务教程
](
/symfony/service/
)
,
[
Symfony 请求教程
](
/symfony/request/
)
,
[
Symfony Flash 消息
](
/symfony/flash/
)
,
[
Symfony 表单教程
](
/symfony/form/
)
,
[
PHP 教程
](
/lang/php/
)
。
请参阅 Mailtrap 的
[
如何以示例
](
https://blog.mailtrap.io/send-emails-in-symfony/
)
的形式在 Symfony 中发送电子邮件。
\ No newline at end of file
请参阅 Mailtrap 的
[
如何在 Symfony 中发送电子邮件的示例
](
https://blog.mailtrap.io/send-emails-in-symfony/
)
。
\ No newline at end of file
docs/symfony/92.md
浏览文件 @
95278da4
...
...
@@ -18,7 +18,7 @@ Symfony 是一组可重用的 PHP 组件和一个用于 Web 项目的 PHP 框架
### 建立应用
我们首先使用
composer
建立应用。
我们首先使用
`composer`
建立应用。
```
php
$
composer
create
-
project
symfony\skeleton
formkeepvals
...
...
docs/symfony/93.md
浏览文件 @
95278da4
...
...
@@ -2,7 +2,7 @@
> 原文: [http://zetcode.com/symfony/routeannotation/](http://zetcode.com/symfony/routeannotation/)
Symfony
@Route 注解教程展示了如何在 Symfony 中使用@Route
注解创建路由。
Symfony
`@Route`
注解教程展示了如何在 Symfony 中使用
`@Route`
注解创建路由。
## Symfony
...
...
@@ -10,7 +10,7 @@ Symfony 是一组可重用的 PHP 组件和一个用于 Web 项目的 PHP 框架
## `@Route`注解
路由是从 URL 路径到控制器的映射。 例如,
`/about`
URL 映射到
`MyController
's`
`about()`
方法。
路由是从 URL 路径到控制器的映射。 例如,
`/about`
URL 映射到
`MyController
`
的
`about()`
方法。
`@Route`
注解用于创建路径。 其他选项是 XML 和 YAML 配置文件以及 PHP 代码。 该注解用于文档字符串中。
...
...
docs/symfony/94.md
浏览文件 @
95278da4
...
...
@@ -10,7 +10,7 @@ Symfony 是一组可重用的 PHP 组件和一个用于 Web 项目的 PHP 框架
## 路由
路由是从 URL 路径到控制器的映射。 例如,
`/about`
URL 映射到
`MyController
's`
`about()`
方法。
路由是从 URL 路径到控制器的映射。 例如,
`/about`
URL 映射到
`MyController
`
的
`about()`
方法。
Symfony 允许使用注释,XML,YAML 和 PHP 创建路由。
...
...
@@ -184,4 +184,4 @@ This is Contacts page
在本教程中,我们使用注释,XML,YAML 配置和 PHP 代码在 Symfony 中创建了路由。
您可能也对以下相关教程感兴趣:
[
Symfony @Route 注释教程
](
/symfony/routeannotation/
)
,
[
Symfony 简介
](
/symfony/intro/
)
,
[
Symfony 表单教程
](
/symfony/form/
)
,
[
PHP 教程
](
/lang/php/
)
。
\ No newline at end of file
您可能也对以下相关教程感兴趣:
[
Symfony `@Route`注释教程
](
/symfony/routeannotation/
)
,
[
Symfony 简介
](
/symfony/intro/
)
,
[
Symfony 表单教程
](
/symfony/form/
)
,
[
PHP 教程
](
/lang/php/
)
。
\ No newline at end of file
docs/symfony/95.md
浏览文件 @
95278da4
...
...
@@ -10,11 +10,11 @@ Symfony 是一组可重用的 PHP 组件和一个用于 Web 项目的 PHP 框架
## Symfony 控制台组件
Symfony 控制台组件使我们可以创建命令行命令。 控制台命令可用于创建
cronj
ob,导入,批处理作业或某些支持性任务。 Symfony 控制台命令可以在 Symfony 控制台应用或 Web 应用中使用。 在本教程中,我们将为控制台应用创建命令。
Symfony 控制台组件使我们可以创建命令行命令。 控制台命令可用于创建
CronJ
ob,导入,批处理作业或某些支持性任务。 Symfony 控制台命令可以在 Symfony 控制台应用或 Web 应用中使用。 在本教程中,我们将为控制台应用创建命令。
## Symfony 控制台命令示例
在以下示例中,我们使用 Symfony
Console
组件创建 Symfony 控制台应用。
在以下示例中,我们使用 Symfony
控制台
组件创建 Symfony 控制台应用。
```
php
$
mkdir
commands
...
...
@@ -464,7 +464,7 @@ $ php application.php books
```
我们运行
books
命令。
我们运行
`books`
命令。
```
php
$
php
application
.
php
time
...
...
@@ -472,7 +472,7 @@ Current date and time: 2018-12-20T23:27:16+01:00
```
我们运行
时间
命令。
我们运行
`time`
命令。
在本教程中,我们在 Symfony 控制台应用中创建了五个控制台命令。
...
...
@@ -483,7 +483,7 @@ Hello Peter!
```
我们运行
ask
命令。
我们运行
`ask`
命令。
在本教程中,我们在 Symfony 控制台应用中创建了五个控制台命令。
...
...
docs/symfony/97.md
浏览文件 @
95278da4
...
...
@@ -49,7 +49,7 @@ $ composer req server maker --dev
```
我们安装了开发 Web 服务器和 Symfony
maker
。
我们安装了开发 Web 服务器和 Symfony
`maker`
。
`countries_mysql.sql`
...
...
@@ -149,7 +149,7 @@ public function index(DataService $dserv)
通过参数注入创建
`DataService`
。
**注意
:**
为简单起见,我们已将数据库访问代码放置在服务类中。 生产应用中还有另一层:存储库。 数据库访问代码放置在存储库类中,该存储库类从服务类中调用。
**注意
**
:
为简单起见,我们已将数据库访问代码放置在服务类中。 生产应用中还有另一层:存储库。 数据库访问代码放置在存储库类中,该存储库类从服务类中调用。
`src/Service/DataService.php`
...
...
@@ -213,7 +213,7 @@ public function findAll() {
```
我们使用 DBAL
QueryBuilder 从表中获取所有行。 Doctrine DBAL QueryBuilder
提供了一个方便,流畅的界面来创建和运行数据库查询。
我们使用 DBAL
`QueryBuilder`
从表中获取所有行。 Doctrine DBAL
`QueryBuilder`
提供了一个方便,流畅的界面来创建和运行数据库查询。
```
php
$
php
bin
/
console
server
:
run
...
...
@@ -244,4 +244,4 @@ $ curl localhost:8000/data
在本教程中,我们在 Symfony 中创建了一个简单的服务。 该服务从数据库中获取数据,并在 Symfony 控制器中自动连线。
您可能也对以下相关教程感兴趣:
[
Symfony 简介
](
/symfony/intro/
)
,
[
Doctrine DBAL QueryBuilder 教程
](
/doctrine/querybuilder/
)
,
[
Symfony DBAL 教程
](
/symfony/dbal/
)
,
[
Symfony 上传文件教程[
](
/symfony/uploadfile/
)
,
[
Symfony 表单教程
](
/symfony/form/
)
,
[
PHP 教程
](
/lang/php/
)
或列出
[
所有 Symfony 教程
](
/all/#symfony/
)
。
\ No newline at end of file
您可能也对以下相关教程感兴趣:
[
Symfony 简介
](
/symfony/intro/
)
,
[
Doctrine DBAL `QueryBuilder`教程
](
/doctrine/querybuilder/
)
,
[
Symfony DBAL 教程
](
/symfony/dbal/
)
,
[
Symfony 上传文件教程
](
/symfony/uploadfile/
)
,
[
Symfony 表单教程
](
/symfony/form/
)
,
[
PHP 教程
](
/lang/php/
)
或列出
[
所有 Symfony 教程
](
/all/#symfony/
)
。
\ No newline at end of file
docs/symfony/98.md
浏览文件 @
95278da4
...
...
@@ -6,7 +6,7 @@ Symfony 验证教程展示了如何在 Symfony 应用中验证数据。 在本
## Symfony
Symfony 是一组可重用的 PHP 组件和一个用于 Web 项目的 PHP 框架。 Symfony 于 2005 年发布为免费软件。Symfony 的原始作者是 Fabien Potencier。 Symfony 的灵感来自 Ruby on Rails,Django 和 Spring
Framework
。
Symfony 是一组可重用的 PHP 组件和一个用于 Web 项目的 PHP 框架。 Symfony 于 2005 年发布为免费软件。Symfony 的原始作者是 Fabien Potencier。 Symfony 的灵感来自 Ruby on Rails,Django 和 Spring
框架
。
## Symfony 验证
...
...
@@ -172,7 +172,7 @@ class FormController extends AbstractController
在
`FormController`
中,我们检查 CSRF 令牌,验证表单输入值,并将响应发送回客户端。
**注意
:**
为简单起见,我们将验证代码放入控制器中。 在生产应用中,最好将此类代码放在单独的服务类中。
**注意
**
:
为简单起见,我们将验证代码放入控制器中。 在生产应用中,最好将此类代码放在单独的服务类中。
```
php
public
function
index
(
Request
$request
,
ValidatorInterface
$validator
,
...
...
@@ -246,7 +246,7 @@ foreach ($violations as $violation) {
```
Symfony
PropertyAccess
用于在将违规消息发送到模板之前对其进行处理。
`ConstraintViolationList`
转换为 PHP 数组,其中的键是表单字段,值是错误消息。 稍后使用
`for`
指令在 Twig 中处理该数组。
Symfony
`PropertyAccess`
用于在将违规消息发送到模板之前对其进行处理。
`ConstraintViolationList`
转换为 PHP 数组,其中的键是表单字段,值是错误消息。 稍后使用
`for`
指令在 Twig 中处理该数组。
```
php
return
$this
->
render
(
'form/violations.html.twig'
,
...
...
@@ -254,7 +254,7 @@ return $this->render('form/violations.html.twig',
```
我们在单独的页面中呈现错误消息。 这通常是使用 Flash 消息完成的。 看看
[
Symfony 保持表单值教程
](
/symfony/keepformvalues/
)
如何使用
闪烁
。
我们在单独的页面中呈现错误消息。 这通常是使用 Flash 消息完成的。 看看
[
Symfony 保持表单值教程
](
/symfony/keepformvalues/
)
如何使用
Flash
。
```
php
}
else
{
...
...
docs/symfony/99.md
浏览文件 @
95278da4
...
...
@@ -10,9 +10,9 @@ Symfony 翻译教程显示了如何在 Symfony 中使用不同的语言。
对于国际化和本地化,Symfony 包含用于这些任务的
`symfony/translation`
程序包。
翻原文件具有以下强制格式:
`domain.locale.loader`
。
`domain`
是将消息组织成组的一种可选方式。 默认域为
`messages`
。
`locale`
定义翻原文件的语言环境; 例如
zh,sk 或 de
。
`loader`
是一种加载和解析文件的方式。 例如 xlf,php 或 yaml。
翻原文件具有以下强制格式:
`domain.locale.loader`
。
`domain`
是将消息组织成组的一种可选方式。 默认域为
`messages`
。
`locale`
定义翻原文件的语言环境; 例如
`zh`
,
`sk`
或
`de`
。
`loader`
是一种加载和解析文件的方式。 例如 xlf,php 或 yaml。
可以将翻译后的文本写入不同的文件格式。 Symfony 转换组件支持许多转换格式,例如 XLIFF,PHP,Qt,
.po,.mo
,JSON,CSV 或 INI。 推荐的格式是 XLIFF。
可以将翻译后的文本写入不同的文件格式。 Symfony 转换组件支持许多转换格式,例如 XLIFF,PHP,Qt,
`.po`
,
`.mo`
,JSON,CSV 或 INI。 推荐的格式是 XLIFF。
可以将翻原文件放在三个不同的目录中,其中第一个位置具有最高优先级:
`translations/`
,
`src/Resources/%bundle name%/translations/`
或
`Resources/translations/`
。
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录