软件架构:
1.C/S
客户端,服务端。
2.B/S
浏览器,服务端。
WAMP架构解读
Windows + apache +mysql+php
LAMP/LNMP架构解读
Linux + apache +mysql + php
Linux + nginx + mysql + php
PHP基础语法:
输出:
echo
<?php
第一个输出:echo ‘ ’;
第二个输出:var_dump (‘ ’); 注意:(该输出会输出有该绝对路径以及该空格中的数据类型)。
比如我写:var_dump(‘我是第一次接触php’);
则会输出: C:\wamp64\www\base\02\01\index.php:5:string ‘我是第一次接触php’ (length=24)
变量:
使用方法:
$变量名= 值 ;
如何使用:
输出:
echo $变量名;
变量定义的规则:
1.变量以¥符号开始,后面跟着变量的名称。
2.变量名必须以字母或者下划线字符开始。
3.变量名只能包含字母数字字符一级下划线(A-z,0-9和_)
4.变量名不能包含空格。
5.变量名是区分大小写的($y与$Y是不一样的变量)。
注意:Php是弱类型的语言,所以变量使用起来比较随意。
数据类型:
String :字符串Integer(整型)Float(浮点型) Boolean(布尔型)Array(数组)Object(对象) null
数组的创建
$bo =array(‘wad’,”dadw”,”daw”); 注意:(可以是不同的数据对象)。
注意数组是不能进行echo的。
对象的创建:
$bo = new Person();
注意对象也是不能进行echo的。
运算符:
加:+ 减:- 乘:* 除:/ 模(除法的余数):% 取反:-
并置:a.b 用于连接两个字符串。
If else(非0即为真)
1.if语句。
2.If else语句
3.If elseif else语句
Switch语句:
switch(n)
{
case label1:
…..;
Break;
Case label2:
….;
Break;
Default:
如果n既不等于label1也不等于label2,此处代码将被执行。
}
For循环
For(初始值;条件;增量)
{
要执行的代码;
}
foreach循环:
用于遍历数组。
语法:
foreach($array as $value)
{
要执行代码;
}
用一个例子便于理解:
$girl = array(‘芳芳’,’阿达’,’唐嫣’);
foreach($girl as $key => $value)
{
echo $key.’:’.$value.’
‘;
}
while循环:
1.while循环:
语法:
while(条件)
{
要执行的代码;
}
2.do…while语句:
语法:
do
{
要执行的代码;
}
while( 限制条件)
函数:
如何创建一个函数:
function 函数名(形参) !!!:形参可以用默认值即:$形参=’ ’,中间的用都好隔开。
{
//要执行的代码;
}
函数命名要求:
1.函数的名称应该提示它的功能。
2.函数名称以字母或下划线开头。(不能以数字开头)。
如何获取时间:
data(‘Y-m-d H:i:s’) 。
(T代表者年份,m代表者月份,d代表日期,H代表时 i代表分钟,s代表秒)。
(10)数组:
有三类数组:
1.数值数组:带有数字id键的数组
2.关联数组:带有指定的键的数组,每个键关联一个值
$shuzu=array(“Peter”=>”35”,”Ben”=>”37”,”Joe”=>”43”);
3.多维数组:包含一个或多个数组的数组。
二维数组:
$cars =array
(
array(“asf”,100,96).
Array(“das”,123,ture),
Array(“adaw”,100,100)
);
(12)字符串函数:
常用函数:
explode() //把字符串打散为数组。
函数原型:
explode(separator,string,limit);
参数:
Separator :规定在哪里分割字符串。
String :要分割的字符串。
Limit :规定所返回的数组元素的数目。
implode() //返回一个由数组元素组合成的字符串。
函数原型:
Implode(separator,array);
参数:
Separator: 规定数组元素之间繁殖的内容,默认为””(空字符串)。
Array: 必须。要结合为字符串的数组。
join() implode() //合并成数组。
trim() //去掉字符串两边 ——:ltrim代表着去除左边的charlist.rtrim代表着去除右边的charlist。
函数原型:
trim(string,chalist);
参数:
String :必须,规定要检查的字符串。
Charlist:可选:规定从字符串中删除哪些字符。如果被省略,则一处一些所有字符:
”\0” - NULL
”\t” - 制表符
”\n” - 换行
”\x0B” - 垂直制表符
”\r” - 回车
” “ - 空格
md5() // 计算字符串MD5散列
str_replace() // 替换字符串中的一些字符(大小写敏感)。
数组函数:
常见函数:
Array_keys() //返回数组中的所有的键名。
Array_pop() //删除数组中的最后一个元素(出栈)。
函数原型:
Array_pop(array); (从被取的数组中取出最后一个元素(原数组中已经没有这个元素了),用一个新数组接的是被取走的元素)。
Array_push() //将一个或多个元素插入数组的末尾。
Array_rand() //从数组中随机玄机选出一个或多个元素,返回键名。
Array_shift() //删除数组中的第一个元素,并返回被删除的元素的值。
Count() //返回数组中的元素的数目。
In_array() //检查数组中是否存在指定的值。
(03/01) 简单表单制作:
分为两部分:
Login.html :登陆部分。
Index.php :转为的页面。
接收login的内容用$_GET或$_POST或$_REQUEST。
差别:
1.用GET会将输入信息暴露在网页上面(接在?后面)。
2.用POST不会暴露信息在网页上,(???:但会在控制台上显示)。
文件函数:
Move_uploaded_file($_FILES[‘name属性’][‘tmp_name’],’新文件夹的名字(带后缀)’)
若失败:则:
$_FILES[‘userfile’][‘error’] :
若值为0,则成功,文件上传成功;
若值为1,则上传的文件超过了php.ini中_upload_max_filesize选项限制的值;
若值为2,则上传的文件的大小超过了HTML表单中MAX_FILE_SIZE选项指定的值;
若值为3,则文件只有部分上传;
若值为4,则没有文件上传;
若值为6,则找不到临时文件夹,PHP4.3.10和PHP5.0.3引进;
若值为7,则文件写入失败,PHP。1.0引进。
简单文件操作:
函数:
1.file_put_contents函数:将一个字符串写入文件。
file_put_contents(file,data,mode,context)
参数:
file:规定要写入数据的文件。(必须)
Data:规定要写入文件的数据。
Mode:规定如何打开/写入文件。可能值:FILE_USE_INCLUDE_PATH/FILE_APPEND/LOCK_EX。
Context: 规定文件句柄的环境。若使用null,则忽略。
file_put_contents(‘文件名.后缀’,字符串) (创建文件名闭并写入字符串),若重复会被覆盖。
file_put_contents(‘文件名.后缀’,字符串,FILE_APPEND); (追加模式:可以添加字符串。)
创建文件:
Touch(‘文件名(加后缀)’);
$handle =fopen(‘文件名’,’操作简写’);
其中换行为:
例如:
Fwrite($handle,’wda’.”\r\n”);
关闭文件:
fclose($handle);
读取文件:
header(‘Content-Type:text/html;charset=utf8’);
$file=fopen(‘ooxx.txt’,’r’);
While(!feof($file))
{
Echo fgets($file);
}
标签可以被标注为字符串。
常见函数:
mkdir(‘文件名’); //创建一个文件夹。
Is_file(‘文件名’); //判断是否为一个文件。是返回ture 否返回false。
认识GD库
$file= Imagecreate((长为)100,(宽为)50); //生成图片资源。
$color =imagecolorallocate($file,(),(),()) //括号中写的是RGB的颜色0-255.
Imagefill($file,0,0,color);
Header(‘Content-Type:image/png’); //输出png格式的图片。
此为固定格式,需要什么格式的图片,就可以改变格式。
Imagepng($file);
正则表达式:
Author: odiws
Permalink: http://odiws.github.io/2023/12/17/php%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0/
License: Copyright (c) 2019 CC-BY-NC-4.0 LICENSE
Slogan: Do you believe in DESTINY?