Php
1.
一、=>,->的意思:
->是对象执行方法或取得属性用的
=>是数组里键和值对应用的。
二、用法
1、=> 的用法数组中用于数组的 key 和 value之间的关系例如:
$a = array('0' => '1','2' => '4',);
echo $a['0'];echo $a['2'];
2、-> 的用法:
类中用于引用类实例的方法和属性例如:
class Test{
var $var = 0;
function add(){
return $this->var++;
}
}
$a = new Test;
echo $a->add();
echo $a->var;
2.
扩展资料:
在php中数组默认键名是整数,也可以自己定义任意字符键名(最好是有实际意义)。如:
$css=array('style'=>'0',‘color’=>‘green‘),
则$css['style']=='0',$css['color']=='green'。
简单的说‘=>’就是定义数组键名让它指向数组末一个元素,
跟指针很相似。
$are->areaid=$areas['parentid']=get_area_id($channelid, $provinces[$pid]);
其意义是:调用get_area_id($channelid, $provinces[$pid]);
获得地区id然后将其赋值给$areas['parentid'],最后将$areas['parentid']的值赋给$are->areaid
其中的多个“=”相连只是为了方便而已还可以连写更多,
其实也可以这样写:
$areas['parentid']=get_area_id($channelid, $provinces[$pid]);
$are->areaid=$areas['parentid'];
3. foreach
foreach 语法结构提供了遍历数组的简单方式。foreach 仅能够应用于数组和对象,如果尝试应用于其他数据类型的变量,或者未初始化的变量将发出错误信息。有两种语法:
foreach (array_expression as $value)
statement
foreach (array_expression as $key => $value)
statement
第一种格式遍历给定的 array_expression 数组。每次循环中,当前单元的值被赋给 $value 并且数组内部的指针向前移一步(因此下一次循环中将会得到下一个单元)。
第二种格式做同样的事,只除了当前单元的键名也会在每次循环中被赋给变量 $key。
4.url在php怎么体现
比如三级 url后缀
第一级是该php文件所在的包名
第二级是文件名
class SpringController extends Controller
比如是SpringController,截去Controller 全小写就是 /spring
第三级就是方法名,比如
public function actionTicketout()
截去action 全小写就是 /ticketout
全部连起来就是
/包名/spring/ticketout
5.
如果文件内容是纯 PHP 代码,最好在文件末尾删除 PHP 结束标记。这可以避免在 PHP 结束标记之后万一意外加入了空格或者换行符,会导致 PHP 开始输出这些空白,而脚本中此时并无输出的意图。
6. Array
6.1
https://www.php.net/manual/zh/language.types.array.php
此外 key 会有如下的强制转换:
- 包含有合法整型值的字符串会被转换为整型。例如键名 "8" 实际会被储存为 8。但是 "08" 则不会强制转换,因为其不是一个合法的十进制数值。
- 浮点数也会被转换为整型,意味着其小数部分会被舍去。例如键名 8.7 实际会被储存为 8。
- 布尔值也会被转换成整型。即键名 true 实际会被储存为 1 而键名 false 会被储存为 0。
- Null 会被转换为空字符串,即键名 null 实际会被储存为 ""。
- 数组和对象不能被用为键名。坚持这么做会导致警告:Illegal offset type。
如果在数组定义中多个单元都使用了同一个键名,则只使用了最后一个,之前的都被覆盖了。
Example #2 类型强制与覆盖示例
<?php
$array = array(
1 => "a",
"1" => "b",
1.5 => "c",
true => "d",
);
var_dump($array);
?>
以上例程会输出:
array(1) {
[1]=>
string(1) "d"
}
上例中所有的键名都被强制转换为 1,则每一个新单元都会覆盖前一个的值,最后剩下的只有一个 "d"。
PHP 数组可以同时含有 integer 和 string 类型的键名,因为 PHP 实际并不区分索引数组和关联数组。
如果对给出的值没有指定键名,则取当前最大的整数索引值
Example:没有键名的索引数组
<?php
$array = array("foo", "bar", "hallo", "world");
var_dump($array);
?>
以上例程会输出:
array(4) {
[0]=>
string(3) "foo"
[1]=>
string(3) "bar"
[2]=>
string(5) "hallo"
[3]=>
string(5) "world"
}
6.2
<?php
// 创建一个简单的数组
$array = array(1, 2, 3, 4, 5);
print_r($array);
// 现在删除其中的所有元素,但保持数组本身不变:
foreach ($array as $i => $value) { // 这里很有意思, 因为原array没有指定键 ,所以键 就是索引值, $array[$i] 就是 索引下对应的元素
unset($array[$i]);
}
print_r($array);
// 添加一个单元(注意新的键名是 5,而不是你可能以为的 0)
$array[] = 6;
print_r($array);
// 重新索引:
$array = array_values($array);
$array[] = 7;
print_r($array);
?>
以上例程会输出:
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
)
Array
(
)
Array
(
[5] => 6
)
Array
(
[0] => 6
[1] => 7
)
6.3
<?php
// Show all errors
error_reporting(E_ALL);
$arr = array('fruit' => 'apple', 'veggie' => 'carrot');
// Correct
print $arr['fruit']; // apple
print $arr['veggie']; // carrot
// Incorrect. This works but also throws a PHP error of level E_NOTICE because
// of an undefined constant named fruit
//
// Notice: Use of undefined constant fruit - assumed 'fruit' in...
print $arr[fruit]; // apple
// This defines a constant to demonstrate what's going on. The value 'veggie'
// is assigned to a constant named fruit.
define('fruit', 'veggie');
// Notice the difference now
print $arr['fruit']; // apple
print $arr[fruit]; // carrot
// The following is okay, as it's inside a string. Constants are not looked for
// within strings, so no E_NOTICE occurs here
print "Hello $arr[fruit]"; // Hello apple
// With one exception: braces surrounding arrays within strings allows constants
// to be interpreted
print "Hello {$arr[fruit]}"; // Hello carrot
print "Hello {$arr['fruit']}"; // Hello apple
// This will not work, and will result in a parse error, such as:
// Parse error: parse error, expecting T_STRING' or T_VARIABLE' or T_NUM_STRING'
// This of course applies to using superglobals in strings as well
print "Hello $arr['fruit']";
print "Hello $_GET['foo']";
// Concatenation is another option
print "Hello " . $arr['fruit']; // Hello apple
?>
7. . 是java里的+ ,就是拼接
8. list 把数组中的值赋给list里的一组变量,要配合 array使用
8.1
<?php
$my_array = array("Dog","Cat","Horse");
list($a, $b, $c) = $my_array;
echo "I have several animals, a $a, a $b and a $c.";
?>
输出:I have several animals, a Dog, a Cat and a Horse.