PHP基础
<?php
//数据与代码在程序中是如何实现的
//1.数据,变量表示,放在数据段
$name = 'Peter Zhu';
//2.代码 函数表示,放在代码段
function get_name($webName)
{
return $webName . 'PHP中文网第九期线上班班主任';
}
//调入执行 指令一条一条进入CPU
echo get_name($name);
echo '<hr>';
//====================================定义变量=========================================
//$ php 声明变量函数符
//name 变量名
//变量的值:它的类型是字符串类型
//基本类型都是单值变量
$name = 'Peter Zhu';
$age = 30;
$isMarried = true;
//读取
echo $name; //回显,无返回值
echo '<br/>';
print $name;
echo '<br/>';
//布尔值 发生类型转换 1 ture 2 fales null
echo '是否已经结婚:' . $isMarried;
echo '<br/>';
//字符串
echo '班主任:' . $name;
echo '获取姓名中第三个字符:' . $name[3];//$name[3] 可以获得想要的字母,但不推荐这样作
echo '<br/>';
echo '获取姓名中第三个字符:' . $name{3} . $name{4}; //推荐使用
echo '<br/>';
//print 打印一个变量 有返回值 返回值1
echo print('班主任:' . $name . ';年龄:' . $age . '<br/>');
echo '<br/>';
//print_r 以更加容易理解的方式打印/返回变量
print_r($name);//打印变量
echo '<br/>';
echo print_r('班主任的姓名是:' . $name, true);//加上true,返回变量值,返回一个字符串,看不到值,如果要看到值,加echo
echo '<br/>';
//常用应用在array
$arr = range(1, 20, 3);
//示例 输出数组不直观方式
print_r($arr);
echo '<br/>';
//示例 输出数组直观方式
echo '<pre>' . print_r($arr, true) . '</pre>';
echo '<br>';
//var_export();输出/返回这个变量的字符串表示(php代码)
$site = 'PHP中文网第九期的班主任是:' . $name;
var_export($site);
echo '<br>';
//var_dump(); 打印一个变量,包括类型,值
var_dump($name, $age, $isMarried);
echo '<Hr>';
//****************************************复合类型 (多值类型)*****************************************
//复合类型只有二种:数组和对象
//数组:分为 “索引数组” 和 “关联数组”
//索引数组 非常依赖访问位置
//关联数组 不依赖顺序
//一.索引数组
//追加式定义数组
$user = [];
$user[0] = 1;
$user[1] = '朱老师';
$user[2] = 'Peter@php.cn';
//直接创建数组
$user[] = 1;
$user[] = '朱老师';
$user[] = 'Peter@php.cn';
//字面量 推荐方式
$user = [
101,
'朱老师',
'Peter@php.cn'
];
//2.访问
#访问下标 单个成员
echo '邮箱:' . $user[2];
echo '<br>';
#访问多个成员
print_r($user);
#数组更直观的写法
echo '<pre>' . print_r($user, true) . '</pre>';
//2.遍历
// for
$res = '';
for ($i = 0; $i < count($user); $i++) {
$res .= $user[$i] . ', ';
}
echo rtrim($res, ', ');
echo '<br>';
//foreach
$res = '';
foreach ($user as $v) {
$res .= $v . ', ';
}
echo rtrim($res, ', ');
echo '<br>';
//4.转化
#索引数组和变量如何转换 用在mvc模板变量赋值
list($id, $name, $email) = $user;
echo $id . '---' . $name . '---' . $email;
//索引数组转为字符串,数据表存储
echo '<br>';
$str = implode(',', $user);
echo $str . '<br/>';
$sql = "INSERT `users` SET `comment`='{$str}';";
echo '<br>';
//将字符串还原成数组
$arr = explode(',', $str);
print_r($arr);
echo '<hr>';
//二.关联数组
//1.定义
$user = [
'id' => 1,
'username' => 'admin',
'phone' => 1827088888,
'email' => 'Liu@php.cn'
];
//单值访问
echo $user['phone'];
//访问
echo '<pre>' . print_r($user, true) . '</pre>';
//遍历
foreach ($user as $key => $value) {
echo '[' . $key . ']=>' . $value;
echo '<br/>';
}
echo '<br/>';
//for 遍历关联数组 借助数组指针
$res='';
for ($i=0;$i<count($user);$i++){
//获取指针当前位置的数组成员
$res.=current($user).', ';
//将指针后移
next($user);
}
echo rtrim($res,', ');
echo '<hr/>';
//转换
//关联数组与变量之间进行转换,应用在mvc模板变量赋值
extract($user);
echo $id;
echo '<br/>';
echo $name;
echo '<br/>';
echo $email;
echo '<br/>';
$dsn='mysql:host=localhost;dbname=users';
$username='root';
$password='root';
$linkP=compact('dsn','username','password');
print_r($linkP);
echo '<br/>';
//关联数组转为索引数组
$arr=array_values($user);
print_r($arr);
PHP基础手写代码