PHP switch 语句变量范围

PHP switch statement variable scope(PHP switch 语句变量范围)
本文介绍了PHP switch 语句变量范围的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在 PHP 中,switch 语句中的变量作用域是如何处理的?

In PHP, how is variable scope handled in switch statements?

例如,举个假设的例子:

For instance, take this hypothetical example:

$someVariable = 0;

switch($something) {

    case 1:
        $someVariable = 1;
        break;

    case 2:
        $someVariable = 2;
        break;
}

echo $someVariable;

这会打印 0 还是 1/2?

Would this print 0 or 1/2?

推荐答案

你的整个代码部分中的变量将是相同的:在 PHP 中没有每个块"的变量范围.

The variable will be the same in your whole portion of code : there is not variable scope "per block" in PHP.

所以,如果 $something12,那么你输入的 case 之一switch,您的代码将输出 1 或 2.

So, if $something is 1 or 2, so you enter in one of the case of the switch, your code would output 1 or 2.

另一方面,如果 $something 不是 1 也不是 2 (例如,如果它被视为 0,您发布的代码就是这种情况,因为它没有初始化为任何东西),您将不会进入任何 case 块;并且代码将输出 0.

On the other hand, if $something is not 1 nor 2 (for instance, if it's considered as 0, which is the case with the code you posted, as it's not initialized to anything), you will not enter in any of the case block ; and the code will output 0.

这篇关于PHP switch 语句变量范围的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Convert JSON integers and floats to strings(将JSON整数和浮点数转换为字符串)
in php how do I use preg replace to turn a url into a tinyurl(在php中,如何使用preg替换将URL转换为TinyURL)
all day appointment for ics calendar file wont work(ICS日历文件的全天约会不起作用)
trim function is giving unexpected values php(Trim函数提供了意外的值php)
Basic PDO connection to MySQL(到MySQL的基本PDO连接)
PHP number_format returns 1.00(Php number_Format返回1.00)