免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 8786 | 回复: 10
打印 上一主题 下一主题

发现php里没有goto语句 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-09-17 03:10 |只看该作者 |倒序浏览
要实现goto的效果该怎么办呢?

效果就和c语言中的goto一样。就是直接跳过一段代码执行。要求不用到{}

用到的地方

<?php
code....
$cache->start();
code...
$cache->end();
code...
?>

function start()
{
code...
if($cache)
goto end;
}

function end()
{
end
code...
}

就是在类中实现一个部分缓存的东西,如果已经缓存好了,就跳过中间代码,直接到end部分,然后处理显示。

如果你们有什么好办法,不妨共享下。
好象我这个想法不好。暂时先这样吧,再接着想想。。。

[ 本帖最后由 rendong237 于 2006-9-17 03:22 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2006-09-17 09:26 |只看该作者
没看懂你要用goto作什么。

按我的理解你的意思是如果已经有cache,那就直接输出,否则重新生成cache,那你可以

  1. if ($c=$cache->start()!==false)
  2. {
  3.    //有cache
  4.    echo $c->getContent();
  5. }
  6. else
  7. {
  8.    //生成内容
  9.    $cache->save();
  10. }
复制代码

论坛徽章:
0
3 [报告]
发表于 2006-09-17 09:46 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
4 [报告]
发表于 2006-09-17 09:49 |只看该作者
我的后面经常跟着一只色狼呀

论坛徽章:
0
5 [报告]
发表于 2006-09-17 09:57 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
6 [报告]
发表于 2006-09-17 13:10 |只看该作者
原帖由 geel 于 2006-9-17 09:26 发表
没看懂你要用goto作什么。

按我的理解你的意思是如果已经有cache,那就直接输出,否则重新生成cache,那你可以
[code]
if ($c=$cache->start()!==false)
{
   //有cache
   echo $c->getContent(); ...



这个是我的意思,
我觉得在这里用goto好看点,
然后就用了个gotgo ,然后出现错误,然后查手册发现没有goto这种语法,呵呵.

再问,能不能不用到{}这个达到goto的效果呢?想把这个cache独立出来,不用到{}
比如说直接:
  cache->start();
code...
cache->end();
就达到不执行code...的代码,不知道这样能实现么?前提是不用页面内加结构控制语句

论坛徽章:
0
7 [报告]
发表于 2006-09-17 13:30 |只看该作者
我想把客户的需求文档直接给电脑让电脑给我生成程序,可是不行

论坛徽章:
0
8 [报告]
发表于 2006-09-17 13:56 |只看该作者
呵呵,要是需求文档也用一定的语言结构来写的话,说不定可以的哦.

论坛徽章:
0
9 [报告]
发表于 2006-09-17 18:20 |只看该作者
PHP 6 的 break 将会有 goto 的功能。

论坛徽章:
0
10 [报告]
发表于 2006-09-18 19:34 |只看该作者
要goto干什么,嵌套不能解决问题么

解函数的题目,首先要对表达式进行分析和整理。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP