PHP变量命名规则与范围
内置结构、关键词以及用户自定义类名和函数名不区分大小写(如echo while class名称,function名称),而变量名严格区分大小写。
有效变量名以字母和下划线开头,不能以数字开头,中间不能使用空格,用点分开。(可以使用中文)
系统关键词可以在PHP中作为变量名使用(但最好不要)
附:变量范围:如果不是在函数中声明,则一般在一个页面所有开启PHP模式下有效。
内置结构、关键词以及用户自定义类名和函数名不区分大小写(如echo while class名称,function名称),而变量名严格区分大小写。
有效变量名以字母和下划线开头,不能以数字开头,中间不能使用空格,用点分开。(可以使用中文)
系统关键词可以在PHP中作为变量名使用(但最好不要)
附:变量范围:如果不是在函数中声明,则一般在一个页面所有开启PHP模式下有效。
PHP的变量类型有以下几种:
标量类型
复合类型
特殊类型
貌似在兔子书上没有看到过,传统的赋值方法传值大致是变量A = 变量B ,而引用赋值相当于“一根绳上的蚂蚱”,A变化同样会引起B变化,同样的B变化会引起A变化。(传值更快速)
$foo = 'Bob'
$bar = &$foo //此时$bar为'Bob'
$bar = "My name is Tom";
echo $foo //此时会输出"My name is Tom"
but:
$bar = &(4 * 1);
function test() {
return 2
}
$foo = &test();
都是非法的,变量必须要有名字。
但他们还是两个变量,所以用unset
销毁其中一个的时候另一个不会消失。
这里有一道题目
<?php
$a= "hello";
$b= &$a;
unset($b);
$b= "world";
echo $a;
?>
请问输出结果是:
A.hello B.world C.NULL D.unset
就直接解释了unset()
释放变量后另一个变量不会消失,而关联会被取消的问题,所以输出的才是hello
首先我们来看一个模型:
(这个模型我也画了好一会儿……)我们把栈想象成一段不封口的容器,元素想象成木块。
题目如:
设栈S的初始状态为空,元素a,b,c,d,e,f,g依次入栈,以下出栈序列不可能出现的是( )。
A.a,b,c,e,d,f,g B.b,c,a,f,e,g,d C.a,e,d,c,b,f,g
D.d,c,f,e,b,a,g E.g,e,f,d,c,b,a
今天某个小弟弟又来问了一道题(格式什么的早已抛之脑后……我完了规范格式长啥样了):
#include<stdio.h>
main(void){
int a,i;
a = 0;
for(i = 1;i < 5; i++)
{
switch (i)
{
case 0:
case 3:
a+=2;
case 1:
case 2:
a+=3;
default:
a+=5;
}
}
printf("%d\n",a);
}
题目是酱紫滴(╮(╯-╰)╭某个小弟弟问的):
以下while循环中,循环体执行的次数是()
k = 1;
while(--k)
k = 10;
A、10次 B、无限次 C、1次 D、一次都不