`
hideto
  • 浏览: 2666655 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

PHP、CakePHP哪凉快哪呆着去

阅读更多
因为公司经常有PHP的外包项目做,客户指定使用PHP来开发,而我是Java组的,没做过PHP项目,心生好奇,趁今晚有空来摸摸PHP。

装了PHPeclipe和xampp,google到PHP手册
一起就绪,学起PHP来,发现PHPeclipse的代码提示做的很不错。
可是慢慢看手册,我慢慢发现,都说PHP开发小型项目快,但是页面里嵌入一坨一坨的逻辑代码,非常不爽啊。
在看到MySql函数这章时,我已经完全受不了了!
<?php
// 连接,选择数据库
$link = mysql_connect('mysql_host', 'mysql_user', 'mysql_password')
    or die('Could not connect: ' . mysql_error());
echo 'Connected successfully';
mysql_select_db('my_database') or die('Could not select database');

// 执行 SQL 查询
$query = 'SELECT * FROM my_table';
$result = mysql_query($query) or die('Query failed: ' . mysql_error());

// 用 HTML 显示结果
echo "<table>\n";
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
    echo "\t<tr>\n";
    foreach ($line as $col_value) {
        echo "\t\t<td>$col_value</td>\n";
    }
    echo "\t</tr>\n";
}
echo "</table>\n";

// 释放结果集
mysql_free_result($result);

// 关闭连接
mysql_close($link);
?> 

数据库连接->查询->就在页面本地显示结果,加上古怪的语法、关键字和函数名,完全没有MVC的概念,简直连JSP都不如!
看来5年前板桥对PHP的批斗是万分正确的。

太无奈了!

我继续google,得到一份CakePHP Manual,以前没细看Cake,只了解它是Rails的盗版。
看看Cake Blog Tutorial上手吧。
结果PHPeclipse竟然不支持thtml文件的语法高亮、代码和标签提示!
郁闷之中,抱着忍者无敌的精神一行一行代码的敲,细细体会CakePHP开发是有多Rapid。
posts_controller.php:
<?php
class PostsController extends AppController
{
	var $name = 'Posts';
	
	function index()
	{
		$this->set('posts', $this->Post->findAll());
	}
	
	function view($id = null)
	{
		$this->Post->id = $id;
		$this->set('post', $this->Post->read());
	}
	
	function add()
	{
		if (!empty($this->data))
		{
			if ($this->Post->save($this->data))
			{
				$this->flash('Your post has been saved.','/posts');
			}
		}
	}
	
	function edit($id = null)
	{
		if (empty($this->data))
		{
			$this->Post->id = $id;
			$this->data = $this->Post->read();
		}
		else
		{
			if ($this->Post->save($this->data['Post']))
			{
				$this->flash('Your post has been updated.','/posts');
			}
		}
	}
	
	function delete($id)
	{
		$this->Post->del($id);
		$this->flash('The post with id: '.$id.' has been deleted.', '/posts');	
	}
}
?>

index.thtml:
<h1>Blog posts</h1>
<p><?php echo $html->link("Add Post", "/posts/add");?></p>
<table>
	<tr>
		<th>Id</th>
		<th>Title</th>
		<th>Created</th>
	</tr>
	
	<?php foreach ($posts as $post): ?>
		<tr>
			<td><?php echo $post['Post']['id']; ?></td>
			<td>
			<?php echo $html->link($post['Post']['title'],"/posts/view/".$post['Post']['id']); ?></td>	
			<?php echo $html->link('Delete', "/posts/delete/{$post['Post']['id']}", null, 'Are you sure')?>
			<?php echo $html->link('Edit', "/posts/edit/".$post['Post']['id']);?>
			</td>
			<td><?php echo $post['Post']['created']; ?></td>
		</tr>
	<?php endforeach; ?>
</table>


哇,这代码太华丽了!太精湛了!

$this->Post-><?php..?>echo$post['Post']['xx']写到手软,真服了,什么烂语法啊!
CakePHP的作者你们辛苦了,为了赶Rails的时髦让你们以及使用Cake的广大软件作坊的同仁们敲烂无数键盘,硬件商要感谢你们!
你们是伟大的功臣!来自火星的英雄!

PHP、CakePHP,地球不适合你们。
分享到:
评论
26 楼 hideto 2007-09-26  
实际上还是得具体情况具体分析
根据什么样的工作去找适合的技术
对我而言,很有可能以后都用不上Java、.NET和PHP了
所以都找凉快地儿歇着去吧
25 楼 123waily 2007-09-26  
java哪凉快哪呆着去   
24 楼 fnet 2007-09-26  
LZ,如果我是你们项目经理,对于你这种怕写代码的小朋友,pass...
23 楼 fnet 2007-09-26  
LZ,侬不适合搞技术yeqing
22 楼 nbzx 2007-09-26  
在javaeye上竟然也看到这样的言辞,对另一贴子上说的公司总是招不到好的技术人才又多了几分理解,哈,开个玩笑。
每种语言的存在都有它存在的道理。难道Yahoo疯了吗,web开发大量是用php的,可以看雅虎中国技术研发部总监谭晓生的讲演http://www.iforchina.com/show.aspx?id=11710&cid=121。
php的优点不用多说了,很看好resin的项目Quercus(使php可以跑在java服务器上),快速的php前台页面开发加上强有力的java后台支持,完美的组合啊。
21 楼 aspmax 2007-09-26  
呵呵。楼主这种态度搞技术,恐怕也是那种偏爱语言之争的人物吧?看来适合永远做底层的code worker
20 楼 koda 2007-09-26  
请楼主不要把这么无知的言论拿出来误导别人!
19 楼 fireflyc 2007-09-08  
smarty模板~
我也是搞java开发的,但是捎带着我对PHP没有任何偏见。呵呵~有必要用这个东西做一些项目~你会感觉到比java要爽~
18 楼 kevintt 2007-09-04  
楼主改行吧,你这样的态度不适合在地球,你应该去火星看看~~~
17 楼 hideto 2007-08-22  
生产静态页面不是PHP独有的技术
J2EE当然可以开发网站了,我做过很多基于Java的美国网站
不知道你为什么认为Java不能应付上百万的新闻浏览
16 楼 matyhtf 2007-08-21  
PHP Smarty做的网站,完全实现了后台程序和前台HTML隔离,生成静态页面,PHP是专门做网站的,J2EE是搞Web应用程序的。没有什么可比性。J2EE的大型电子商务系统和Sina的20000000人次新闻浏览,互相比较没有什么意义!Java动态数据库的新闻系统能应付上百万的新闻浏览么?
    在网站这方面,PHP是最棒的!
15 楼 manmoon 2007-08-09  
呵呵,php开发起来速度是java无法比拟的
14 楼 hideto 2007-08-02  
太好了,原来PHP也发展的不错了,有成型的模式和最佳实践,我对PHP的印象还停留在5年前
感谢各位的教导,本人实在没有太多PHP的经验
向大家学习
13 楼 xiaodou 2007-08-02  
javaeye是个很不错的站啊。怎么会有这样的人在呢???搞不明白!
12 楼 xiaodou 2007-08-02  
懒得评论这种人
11 楼 syre 2007-08-02  
就算是用php来做模板,也是可以打开short_open_tags的。
至于Cake,没仔细看就下结论实在是太不负责任了。
10 楼 sxin 2007-08-02  
楼主是搞JAVA开发的吗? 你连 Eclipse 都不熟悉, thtml语法加亮只要在 Preferences->File Associations加一个 thtml设置为PHPeclipse打开就可以了,  您不设置的话是用文本编辑器打开的, 当然沒顏色加亮了。 

还有, 即使不使用 CakePHP,PHP也有很多年不使用数据库函数直接操作了, 有ADODB, 有PHPLib, 视图有 samrty还有很多, 就像你刚学JAVA的时候, 不知道 struts, spring, hibernate 不是一樣要在servlet或JSP中用JDBC一点一点的写?

希望楼主记住一句话,  沒有调查就沒有发言权, 特別是语气这么过的话少说!!zhigang
9 楼 syre 2007-08-02  
因为LZ实在不了解php,那也是没办法的。
8 楼 dualface 2007-07-30  
楼主看了一小会儿就这样贬低,实在是。。。。。

CakePHP 的开发效率还是很高的。你在模板里面看不惯 <?php echo ?>,可以用 Smarty 这样的模板引擎。
7 楼 purpen 2007-07-30  
每种语言都有其特点,也有其不足,不要妄加评论.

相关推荐

    PHP的框架之CakePHP-CakePHP教程

    打包下载,里面有CakePHP的框架源码,下载后可直接使用,版本是1.1的,稳定版;CakePHP的分页组件源码;CakePHP的中文及英文教程,CHM格式;CakePHP的中文打印版教程,WORD格式,下载后可直接打印,方便的;CakePHP...

    phpmvc框架cakephp

    CakePHP有稳定的版本更新,如文件名所示的1.3.0-alpha,标志着它在不断进步和完善。同时,其活跃的社区提供丰富的文档、教程和问题解答,确保开发者能够获取必要的支持。 总的来说,CakePHP作为PHP的MVC框架,以其...

    CakePHP PHP MVC框架

    **CakePHP:PHP MVC框架详解** CakePHP是一个广泛使用的开源PHP框架,它基于Model-View-Controller(MVC)架构模式,旨在简化Web应用程序的开发流程,提高开发效率,并且支持快速原型制作。这个框架以其易用性、可...

    cakephp php-framework

    There are two main ways to get a fresh copy of CakePHP. You can either download an archive copy (zip/tar.gz/tar.bz2) from the main website, or check out the code from the git repository. To download ...

    CakePHP php框架 v3.7.8.zip

    CakePHP php框架简介 CakePHP是一个用PHP编写的开源Web应用框架,不过其模型是用Ruby on Rails设计的。作为PHP世界的Rails,CakePHP采纳了RoR的许多优秀特性,成熟度较高。在cakephp.org站点的Sites in the wild...

    CakePHP php框架 v3.7.0 beta1.zip

    CakePHP php框架简介 CakePHP是一个用PHP编写的开源Web应用框架,不过其模型是用Ruby on Rails设计的。作为PHP世界的Rails,CakePHP采纳了RoR的许多优秀特性,成熟度较高。在cakephp.org站点的Sites in the wild...

    CakePHP php框架 v3.8.5

    CakePHP是一个用PHP编写的开源Web应用框架,不过其模型是用Ruby on Rails设计的。作为PHP世界的Rails,CakePHP采纳了RoR的许多优秀特性,成熟度较高。在cakephp.org站点的Sites in the wild页面可以看到当前使用...

    PHP的框架之CakePHP-CakePHP教程终极教程

    打包下载,里面有CakePHP的框架源码,下载后可直接使用,版本是1.1的,稳定版;CakePHP的分页组件源码;CakePHP的中文及英文教程,CHM格式;CakePHP的中文打印版教程,WORD格式,下载后可直接打印,方便的;CakePHP...

    Building PHP Applications with Symfony, CakePHP, and Zend Framework.pdf.rar

    解压密码在:http://www.pin5i.com/showtopic-building-php-applications-with-symfony-cakephp-zend-framework.html

    CakePHP php框架 v5.0.7

    CakePHP是一个用PHP编写的开源Web应用框架,不过其模型是用Ruby on Rails设计的。作为PHP世界的Rails,CakePHP采纳了RoR的许多优秀特性,成熟度较高。在cakephp.org站点的Sites in the wild页面可以看到当前使用...

    CakePHP1.2.3.8166.7z CakePHP最新稳定版

    《深入理解CakePHP 1.2.3.8166:PHP的高效框架实践》 CakePHP,作为PHP世界中的一款知名MVC(Model-View-Controller)框架,以其简洁、高效的特性深受开发者喜爱。在本文中,我们将深度探讨最新的稳定版CakePHP 1.2...

    CakePHP-PHP框架

    - **灵活的许可协议**:CakePHP采用MIT许可证,这意味着它可以被自由地用于商业或非商业项目。 #### 二、选择CakePHP的理由 1. **活跃友好的社区**:CakePHP拥有一个非常活跃和支持性的社区,这为开发者提供了丰富...

    cakephp-1.2 manual

    CakePHP 是一个基于Model-View-Controller(MVC)架构模式的开源PHP框架,它简化了Web应用程序的开发流程,提高了代码的可读性和可维护性。 在手册中,你会了解到以下核心知识点: 1. **安装与配置**:首先,你...

    Cakephp安装和配置

    ### CakePHP 安装与配置指南 #### 一、前言 本文档旨在详细介绍如何在特定环境下安装并配置 CakePHP 框架。所使用的环境包括 Apache 2.2.21、MySQL 5.5.20 和 PHP 5.3.10,操作系统为 Windows 7 Ultimate 32位。 #...

    CakePHP 1.2 API 中文文档

    **CakePHP 1.2 API 中文文档** CakePHP 是一个基于MVC(Model-View-Controller)架构的开源PHP框架,它旨在简化Web应用程序的开发,并提高开发效率。 CakePHP 1.2 API 中文文档是针对这个版本的详细技术参考,为...

    cakephp-2.4.1

    《CakePHP 2.4.1:PHP与MySQL的MVC框架详解》 CakePHP,一个基于Model-View-Controller(MVC)架构模式的开源PHP框架,以其简洁、高效和可扩展性在Web开发领域备受青睐。在本文中,我们将深入探讨CakePHP 2.4.1...

    cakephp 框架

    CakePHP是一款基于MVC(Model-View-Controller)设计模式的开源PHP框架,它旨在简化Web应用程序的开发过程,提高开发效率。以下是对 CakePHP 框架的详细阐述: 一、简介 CakePHP 是一个遵循 Model-View-Controller ...

Global site tag (gtag.js) - Google Analytics