计算机数据运行
<?php
//数据,变量表示,放在数据段
$site = 'php.cn';
//代码,函数表示,放在代码段
function get_site($webSite){
return $webSite.'欢迎你';
}
//调用执行,指令一条一条的进入CPU中
echo get_site($site);
数据类型与输出
<?php
//变量名是name,变量值的类型是字符串
$name = 'Tom Black';
$age = 30;
$isMarried = true;
//单值读取
echo '年龄'.$age.'<br>';
//布尔值会发生类型转换,true=>1,false=>空
echo '是否已婚:'.$isMarried.'<br>';
//字符串
echo '姓名:'.$name.'<br>';
//字符串虽是单值,但却可以像数组一样访问
echo '我的姓是:'.$name{0}.'<br>';
//print:打印,与echo类似,但是会有返回值:1
print ('年龄'.$age.'<br>');
echo print ('年龄'.$age.'<br>');
//print_r
print_r($name);
echo '<br>';
//如果添加了第二参数true,则是返回信息return,而不是输出echo
echo print_r($name,true);
$data = range(1,20,2);
echo '<pre>'.print_r($data,true);
//var_export($var,false|true):输出/返回变量的字符串表示
var_export($name);
echo '<br>';
//var_dump()
var_dump($name,$age,$isMarried);
索引数组和关联数组
<?php
//索引数组
//1.定义,如果有$user=[],就是追加式定义
//直接定义,索引默认从0开始,也可以自定义,并不要求连续
$user[] = 101;
$user[] = 'admin';
$user[] = 'admin@php.cn';
//推荐方式
$user = [101,'admin','admin@php.cn'];
//2.访问:单个或多个成员
echo $user[2].'<br>';
print_r($user);
var_dump($user);
//3.遍历:可循环访问全部成员
//3.1 for:索引数组,最常用的是for循环
$res = '';
for ($i=0;$i<count($user);$i++){
$res .= $user[$i].',';
}
echo rtrim($res,',');
//3.2 foreach
$res = '';
foreach($user as $item){
$res .= $item.',';
}
echo rtrim($res,',');
//4.转换
//4.1 索引数组与变量之间的转换,mvc模板中赋值会用到
list($id,$name,$email) = $user;
echo $id.'--'.$name.'--'.$email.'<br>';
//4.2 索引数组转字符串
$str = implode(',',$user);
echo $str;
//字符串转换成数组
$arr = explode(',',$str);
print_r($arr);
//注意:索引不推荐使用while遍历
//each()有可能在后续版本中删除
while(list($key,$value)=each($user)){
echo '['.$key.']=>'.$value.'<br>';
}
//关联数组
//1.定义
$user = ['id'=>1001,'name'=>'admin','email'=>'admin@php.cn'];
//2.访问
echo $user['email'];
print_r($user);
var_dump($user);
var_export($user);
// 3.遍历
//3.1 foreach:推荐
foreach ($user as $key=>$value) {
echo '['.$key.']=>'.$value;
}
//3.2 for:并不合适关联数组,但是借助数组指针,也可以完成遍历
$res = '';
for ($i=0;$i<count($user);$i++){
$res .= current($user).',';
next($user);
}
echo rtrim($res,',');
//4. 转换
//4.1 关联数组与变量之间的转换,关联数组可以直接使用字符串键名做变量名
extract($user);
echo 'id='.$id.',name='.$name.',email='.$email;
//将独立变量组装成关联数组
$dsn = 'mysql:host=localhost;dbname=demo';
$user = 'root';
$pwd = 'root';
$link = compact('dsn','user','pwd');
print_r($link);
// 4.2 关联数组转索引数组
print_r(array_values($user));
手写作业