给这个方法传递变量的引用,类似c中的指针一样,传递的时变量的内存地址。
这样,next方法内部就会直接操作传递过去的array变量。
不带引用,就相当于给了一份拷贝,原本的值是不变的。
for example:
1、function next(array &$array){ //各种操作}$arr = array(1,2,3);next($arr);//这里不需要加&符号var_dump($arr);//这时$arr已经被next()处理改变了2、/*如果是不带引用的方法*/function next(array $array){ //各种操作 return $array;//注意这里有返回值}$arr = array(1,2,3);$arr2 = array();$arr2 = next($arr);//next方法有返回值,并赋给了$arr2,并且$arr没有变化var_dump($arr);var_dump($arr2);
or 的意思, 或者if($a==1||$a==0) //a =1或者a=0时打印OK{ echo 'ok';}逻辑运算符,
PHP5中,-> 多为“对象属性”访问符号。 比如说你有一个新的对象 $new_obj = new class(); 那么在声明class类的时候,访问其自身属性name 就需要 $this->name , 针对 $new_obj ,其自身的name属性也要这么访问 $new_obj ->name;
php中的::是调用类中的静态方法或者常量,属性的符号例如class aaa{ static function ar(){ } function br(){}}使用非静态方法,要先创建实例$obj = new aaa();$obj -> br();使用静态方法,无需创建实例,直接使用类名aaa::ar();
PHP中“?:”指的是三目运算符。
三目运算符,也称为条件运算符,它是计算机语言的重要组成部分。它是唯一具有3个操作数的运算符,因此有时称为三元运算符。通常,三目算子的组合是右边界。
三目运算符提供了一种表达简单if-else语句的简便方法。运算符由以下格式的问号(?)和冒号(:)组成:表达式?表达式:表达式;一条语句称为条件表达式,由3个子表达式组成,并使用问号?和冒号:分开。
条件表达式中问号之前的部分是要测试的条件。这就像if语句括号中的表达式。如果条件为真,则执行?之间的语句。和:;否则,执行以下部分。如果您认为有帮助,可以在子表达式两边加上括号
扩展资料:
<php>函数的操作规则
1、对于条件表达式b? x:y,首先计算条件b,然后判断。如果b的值为true,则计算x的值,并且运算的结果为x的值;否则,计算出y的值,并且运算的结果是y的值。
2、条件表达式永远不会同时计算x和y。条件运算符是右关联的,即从右到左分组。例如,一个? b:c? d:e将被执行为? b:(c→d:e)。
3、可以理解为:条件?结果1:结果2,在里面?该数字是格式要求。也可以理解为条件是否为真,条件成立为结果1,否则为结果2。
参考资料来源:百度百科-三目运算符
连续定义变量!$a='abc';$a.='def';此时$a=‘abcdef'
在PHP中,=>操作符通常用于数组操作中,一般形式如下:array( key => value , ... ) 键(key) 可以是一个整数(integer) 或 字符串(string), 值(value) 可以是任意类型的值。如: $arr = array("foo" => "bar", 12 => true);===================================-> 操作符用于类、对象的操作中,以下是示例:<?phpclass foo{ function do_foo() { echo "Doing foo."; }}$bar = new foo;$bar->do_foo();?>
抵制错误提示。比如:在页面使用$_POST['var'],当没有此POST值时会提示错误,但使用@$_POST['var']会抵制错误输出。
不用的地方有不同的用处1, 数组赋值 $name = 'Hello world!'; $array = array( 'hi' = > $name ); echo $array( 'hi' ); // 打印结果是 Hello world!2, foreach 中的局部变量 $a = array( 'a'=>'apple', 'b'=>'banana' ); foreach( $a as $k => $v ){ echo ' k= ' .$k .' v = '. $v .'<br/>\n';}