Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否有一个“问题”;对",;如何使用php?_Php_Html_Zend Framework_Symfony1 - Fatal编程技术网

是否有一个“问题”;对",;如何使用php?

是否有一个“问题”;对",;如何使用php?,php,html,zend-framework,symfony1,Php,Html,Zend Framework,Symfony1,我一直在学习php,只是努力学习而已 我希望有人能在安全性、流程和一般最佳实践方面为我指明正确的方向 谢谢 编辑-- 我想表达我想问的问题的一个更好的方式是。。 最佳做法是什么: 1.)使用php处理表单时,get vs post、$\u REQUEST vs$\u get&$\u post 2.)动态创建HTML文件时(以下示例) 3.)在与表单创建者相同的文件中登录和验证 4.)使用php发送电子邮件 从上面的#2开始 --VS-- 欢迎 echo语句中有很多html 表和管理界面在这里

我一直在学习php,只是努力学习而已

我希望有人能在安全性、流程和一般最佳实践方面为我指明正确的方向

谢谢

编辑--

我想表达我想问的问题的一个更好的方式是。。 最佳做法是什么:
1.)使用php处理表单时,get vs post、$\u REQUEST vs$\u get&$\u post
2.)动态创建HTML文件时(以下示例)
3.)在与表单创建者相同的文件中登录和验证
4.)使用php发送电子邮件

从上面的#2开始


--VS--
欢迎
echo语句中有很多html
表和管理界面在这里
echo语句中有很多html
这里是可编辑和用户仪表板
--VS--
您是以用户身份登录的

附言: 感谢所有已经回复的人。 我还可以问一下框架适合哪里吗?我上过面向对象的课程,我们对任何框架都不熟悉

我读了很多关于Symfony和zend框架的文章,但仍然感到困惑


再次感谢。

使用免费提供的框架,例如:

  • Zend框架
  • CakePHP
  • CodeIgniter(参见注释)
  • 科哈纳(来自)

并遵循该框架指定的标准。

看看一个著名的开源软件,它以良好的代码而闻名

看看,或者其他任何一个

我不建议使用CI的源代码作为指导-因为我认为它仍然支持PHP4,所以有些代码将无法学习-除非您计划编写PHP4代码,如果您现在只是在学习,这是一个坏主意

不要看WordPress,你会养成一些糟糕的习惯


另外,当我想到它时,请学习OO以及与过程代码的区别。

好的编程与语言无关。我建议您开始学习软件开发概念,如面向对象编程、设计模式、关注点分离、重用、封装、测试和重构。从任何一个开始,不断地“插入”列表,你会变得更好


特定于PHP-学习公认的编码标准,如's或's。在理解了一些概念后,请选择一个好的参考资料,例如其他答案中提到的顶级框架之一—Zend Framework、CakePHP、Symfony等。

提供“使用框架”或“查看框架”以外的内容下面是我发现的一些快速经验法则PHP特定实践,它们会产生很大的不同

  • 使用
    PDO
    并将其抽象为类(或使用现有类)。不要使用
    mysql\u query
    或此类函数
  • 输出前的逻辑。不要在这里使用
    HTML
    (使用herdoc语法非常有帮助)
  • 使用
    \uuu autoload
    魔术方法限制包含

  • 光是这些就可以日夜转换我看到的许多丑陋的PHP代码。还有明显的语言不可知规则,如一致的命名约定、自文档代码等。

    为什么每个人都攻击php?许多优秀的网站都使用它。至少在它们变得足够大,值得大修之前

    与facebook或amazon这样的网站相比,99%的互联网都是没有多少流量的一次性网站,因此,如果php以一种经济高效的方式完成任务,并且对于所需的内容来说,其稳定性或安全性同样高,那么他们为什么要学习一种更复杂、更稳定或更严格的语言呢

    我创建的大多数站点都是从codeigniter的分支Kohana上运行的。两者都很有用。谁在乎CI是否使用php4。如果你被一家拥有过时网站的网络公司聘用,你会怎么办?猜猜看,你需要知道php4。这种抱怨就像说你不再需要知道表格html。。。直到你不得不为一些大公司设计和编写一个新闻稿模板。然后呢?谷歌搜索速成班

    我说使用PHP的正确方法是遵循示例。是的,wordpress有一些糟糕的习惯,但它很有效,而且只是最成功的平台之一。这告诉你什么

    我想说,你可以从像Kohana这样的框架——甚至是CI——中学到很多东西,因为它们都有不错的安全方法,不难遵循。比如数据库转义和xss过滤。如果您不熟悉OO编程,并且两者都有一个良好的用户基础,那么您将不会被困在没有答案的情况下


    别让这些家伙吓到你。对于初学者来说,PHP是一个不错的选择。最终,像Java或objective C这样的东西将对工作和应用程序更为有利,但当你到达那里时,你会学到它。

    PHP社区从来没有真正在提供任何开发指南或倡导最佳实践方面表现得很强。在框架之前的日子里,大多数开发人员编写的典型php代码都是非常业余和杂乱无章的——请参阅Wordpress源代码。但是PHP是一种很好的web应用程序语言。它是为网络而设计的,如果你愿意,你可以用它编写好的专业代码。抨击它是时髦的,但不要理会那些东西

    无论如何,正如其他人在这里所说的,您最好的选择是使用框架。作为一个新手,选择一个有良好文档记录的框架并拥有强大的社区来帮助您克服困难对您来说是很重要的。下面是我对主要php框架的概述:

    • Kohana=>这是一个很好的例子,但在一个薄弱的社区中却没有很好的记录。跳过它
    • Zend=>最流行的php框架,有好的文档,但另一个表现不佳的框架,因为它过度使用对象和模式,试图变得过于进取
    • Cake&Symfony=>是第一代php框架,也因性能不佳而受到欢迎。我两个都跳过。symfony的新版本正在制作中,但尚未准备就绪
    • Limition=>由蛋糕开发者之一领导的尖端新框架。使用PHP5。
      <?php
      echo "<h1> Welcome </h1>";
      
      if ($_SESSION['type'] == "admin")
      {
      //lots of html in the echo statment
      echo "tables and admin interface here";
      } else
      {
      //lots of html in the echo statment
      echo "tables and user dashboard here";
      }
      ?>
      
      --VS--
      
      
      <h1> Welcome </h1>
      
      <?php
      if ($_SESSION['type'] == "admin")
      {
       ?>
      lots of html in the echo statment    
      tables and admin interface here 
      <?php
      } else
      {
       ?>
      lots of html in the echo statment    
      ables and user dashboard here    
      <?php
      }
      ?>
      
      --VS-- 
      
      <?php if($_SESSION['username']): ?>
      
      <p>You are logged in as <?=$_SESSION['username']?></p>
      
      <p><a href="?logout=1">Logout</a></p>
      
      <?php endif; ?>