社区
基础编程
帖子详情
新生问题,php执行顺序
xhp5743
2011-07-08 11:12:00
如下代码:
function text1()
{
}
function text2()
{
}
function text3()
{
}
switch ($_GET['n'])
{
case 1:
text1();
break;
case 2:
text2();
break;
case 3:
text3();
break;
}
php没有main()函数,他是怎么知道先执行switch函数的,求解释,我刚刚学PHP 不懂,谢谢了,求解释PH脚本的执行顺序。
...全文
189
11
打赏
收藏
新生问题,php执行顺序
如下代码: function text1() { } function text2() { } function text3() { } switch ($_GET['n']) { case 1: text1(); break; case 2: text2(); break; case 3: text3(); break; } php没有main()函数,他是怎么知道先执行switch函数的,求解释,我刚刚学PHP 不懂,谢谢了,求解释PH脚本的执行顺序。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
乌镇程序员
2011-07-08
打赏
举报
回复
考虑一下这个例子:
test(); //test
function test() { echo 'test'; }
xuzuning
2011-07-08
打赏
举报
回复
你怎么知道
function text1()
{
echo "text1";
}
没有被执行呢?
这是函数声明呀!若没有生成这个函数的话
下面的 text1();
又如何能执行呢?
Abin-2008
2011-07-08
打赏
举报
回复
php是从上往下执行.
你前几行都是声明一些function 即方法,没有调用方法,他是不会执行的.
到了switch的时候 就获取了你get方式传送过来的参数的值.
然后才对应进行调用方法, 方法执行输出.
一起混吧
2011-07-08
打赏
举报
回复
[Quote=引用 4 楼 xhp5743 的回复:]
那么函数text1 就是第一个执行的吗?但是这段代码只会执行一个函数,是由switch来确定的。
引用 1 楼 t5500 的回复:
估计跟JS类似,解释型的语言都会存在一个"预编译"的过程,代码载入后碰到函数、全局变量定义时先进性预编译,然后(按代码块)顺序执行。
[/Quote]执行哪个函数,是根据switch里面的语句而定的。看你怎么定义咯。并不是说按照text1。。顺序来执行的,比如$_GET['n']=2;那么会执行text2()。
xhp5743
2011-07-08
打赏
举报
回复
问题是他为什么会先执行switch
[Quote=引用 5 楼 xuzuning 的回复:]
你是学 C 的吧?
php 与 C 不同,不需要主函数
只要有代码他就执行
[/Quote]
xuzuning
2011-07-08
打赏
举报
回复
你是学 C 的吧?
php 与 C 不同,不需要主函数
只要有代码他就执行
xhp5743
2011-07-08
打赏
举报
回复
那么函数text1 就是第一个执行的吗?但是这段代码只会执行一个函数,是由switch来确定的。
[Quote=引用 1 楼 t5500 的回复:]
估计跟JS类似,解释型的语言都会存在一个"预编译"的过程,代码载入后碰到函数、全局变量定义时先进性预编译,然后(按代码块)顺序执行。
[/Quote]
xhp5743
2011-07-08
打赏
举报
回复
这段代码是响应ajax请求的php代码,ajax传进来一个id,switch根据这个id调用相应的text函数处理。
[Quote=引用 2 楼 eden_sheng 的回复:]
function text1()
{
echo "text1";
}
function text2()
{
echo "text2";
}
function text3()
{
echo "text3";
}
echo "test";
switch ($_GET['n'])
{
case 1:
text1();
break;
case 2:
……
[/Quote]
eden_sheng
2011-07-08
打赏
举报
回复
function text1()
{
echo "text1";
}
function text2()
{
echo "text2";
}
function text3()
{
echo "text3";
}
echo "test";
switch ($_GET['n'])
{
case 1:
text1();
break;
case 2:
text2();
break;
case 3:
text3();
break;
}
看看测试结果
乌镇程序员
2011-07-08
打赏
举报
回复
估计跟JS类似,解释型的语言都会存在一个"预编译"的过程,代码载入后碰到函数、全局变量定义时先进性预编译,然后(按代码块)顺序执行。
xhp5743
2011-07-08
打赏
举报
回复
谢谢各位了,总算搞清楚了。
php
经典趣味算法实例代码
许多人在学习C语言的时候都写过一些有趣的算法,其实这些算法在
PHP
中也同样可以实现,甚至有些算法的代码比C语言中还要简洁,需要的朋友可以参考下
计算机毕业设计—87023
PHP
新生
儿疫苗接种管理系统(源码免费领)
本文采用
PHP
语言、Think
php
框架、Ajax技术进行业务系统的编码及其开发,划分为系统用户、接种员工和管理员三种角色,实现了对
新生
儿疫苗接种的查询、疫苗信息、疫苗入库、预约信息、儿童档案、财务信息、疫苗仓库等功能模块。经过了多次的测试和结果评估,该
新生
儿疫苗接种管理系统已经能够满足
新生
儿疫苗接种管理的实际应用的需要并可以成功上线运行使用了。
RCE-远程代码执行漏洞
远程代码执行(Remote Code Execution,RCE)是一种严重的安全漏洞,允许攻击者在目标服务器或应用程序上执行任意代码。这种漏洞的出现通常源于以下几个方面的缺陷:用户输入未经过滤或验证:当服务器端应用程序未能正确验证用户提交的数据,如HTTP请求参数、文件上传内容、数据库查询语句等,攻击者可能会将恶意代码注入到这些输入中。代码执行功能的设计缺陷:有些系统或应用提供了执行代码的接口,如
PHP
的函数、Java的反序列化漏洞等,若未做足够的安全防护,攻击者可通过操纵输入使得这些接口执行恶意代码。组
[SWPUCTF 2023 秋季
新生
赛] web题解
然后就是上传的时候有两个if语句,第一个成立,第二个不成立。由于GET和POST传同一个参数没有先后顺序,所以不能用下面的方式去实现变量覆盖。分析一下,MD5和sha1都可以用数组绕过,然后用
php
伪协议中的data协议。分析一下,首先是参数名利用
php
解析特性;强等于,但是__wakeup方法会赋值,所以采取引用绕过的方式,exp如下。我们可以bp抓包,依次再三个参数fuzz测试(在页面处输入不了。考点:源码泄露,变量引用绕过__wakeup,
php
变量覆盖。打开题目,先试试普通一句话木马,发现被检测。
(附源码)
PHP
新生
儿疫苗接种管理系统 毕业设计87023
本文采用
PHP
语言、Think
php
框架、Ajax技术进行业务系统的编码及其开发,划分为系统用户、接种员工和管理员三种角色,实现了对
新生
儿疫苗接种的查询、疫苗信息、疫苗入库、预约信息、儿童档案、财务信息、疫苗仓库等功能模块。经过了多次的测试和结果评估,该
新生
儿疫苗接种管理系统已经能够满足
新生
儿疫苗接种管理的实际应用的需要并可以成功上线运行使用了....
基础编程
21,893
社区成员
140,347
社区内容
发帖
与我相关
我的任务
基础编程
从PHP安装配置,PHP入门,PHP基础到PHP应用
复制链接
扫一扫
分享
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章