PHP 基础_php fetch_all id key
function test() {
$a = 30;
$b = 40;
$c = $a + $b;
echo “函数内运算值:”.$c;
echo “
”;
}
test();
$c = $a + $b;
echo “函数外运算值:”.$c;
?>
echo 和 print 的区别:
echo “123”,“456”,“789”;//能够连续输出多个字符串
print “123”,“456”; //输出错误
换行符:
echo “
”;
echo “\n”;
echo PHP_EOL; //换行符
返回变量类型: var_dump
<?php $a = "1111"; $b = 123; $c = null; echo var\_dump($a) . ""; echo var\_dump($b) . "
"; echo var\_dump($c) . "
"; $d = array('a', 1, abc); //数组 echo var\_dump($d) . "
"; $e = true; echo var\_dump($e); ?>
<?php $text1="ni hao"; $text2="hahaha"; echo $text1**.**" ".$text2."
"; //引用多个变量用 点 **. (英文)**连接 为空格 $a = strlen($text1);//计算字符串长度数 echo $a; ?>//空格也算作一个字符
强引用和弱引用
<?php $text1 = "ni hao"; echo "$text1" . "";**// “ ” 双引号输出会显示变量值** echo '$text1';**// ‘’ 单引号会显示变量名本身** ?>
自增自减输出
<?php $x = 10; echo ++$x;//先自增后输出 echo ""; $a=15; echo --$a . "
";//先自减后输出 $y = 20; echo $y++ . "
";//先输出后自增 $b=30; echo $b--;//先自增后输出 ?>
if 条件判断
<?php $x = 10; $y = 20; if ($x > $y) {//判断 x 和 y 的大小,如果满足 $x > $y 就输出 true echo "true"; }else if($x==$y) {//else if 如果上面的判断不满足,再次判断 $x==$y 是否相等 ,如果满足就输出 $x."等于"$y; echo $x."等于"$y; } else {//如果上面的判断都不满足就输出 false echo "false"; } ?><?php $x= (3>4)? "true":"false";//三元运算符 echo $x; ?>
switch 判断
<?php $a="abc"; switch ($a) { case 'red': echo "red"; break; //跳出整个循环体,continue跳出本次循环体,继续执行后面的循环体。 case 'green': echo "green"; break; case 'black': echo "black"; break; default: echo "not color"; } ?>数组
<?php $cars = array("BMW", "BinLi", "大众"); echo "I like " . "$cars[0]", " ", "$cars[1]", " ", "$cars[2]"; ?> <?php $cars = array(); $cars[0] = "BMW"; $cars[1] = "BINlix"; $cars[2] = "大众"; echo "I like " . "$cars[0]", " ", "$cars[1]", " ", "$cars[2]"; ?> <?php $cars = array(); $cars[0] = "BMW"; $cars[1] = "BINlix"; $cars[2] = "大众"; echo count($cars) . "";// count 返回数组长度 echo "I like " . "$cars[0]", " ", "$cars[1]", " ", "$cars[2]"; ?>
count 获取数组的长度
var_dump() 返还数据类型
strlen(); 返回字符串长度
array(); 创建数组
$arrayname=array(‘name’ =>“icq”,‘age’=>20,‘gender’=>true); //关联型数组
echo $arrayname[“name”];
$arrayName=array(‘1’,“zhangsan”,20,false,“beijingchangping”);//数字型数组
echo $arrayName[3]; //布尔型 true 打印显示1
for 循环 遍历数组:
<?php
$cars = array(“BMW”, “BinLi”, “大众”);
a r r l e n g t h = c o u n t ( arrlength = count( arrlength=count(cars);
for ($x = 0; $x < $arrlength; $x++) {
echo
c
a
r
s
[
cars[
cars[x] . “
”;
}//只输出值
?>
<?php
$cars = array(“BMW”, “BinLi”, “大众”);
a r r l e n g t h = c o u n t ( arrlength = count( arrlength=count(cars);
print_r($cars);//数据类型,下标值,值都打印出来
?>
关联数组:
<?php $age = array("gao" => "30", "li" => "20", "zhang" => "10"); echo "gao is " . " " . $age['gao'] . " " . " years old."; ?>关联数组2:
<?php $age = array(); $age["sun"] = ["20"]; $age["liu"] = ["30"]; $age["zhang"] = ["40"]; print\_r($age); ?>多维数组
<?php $cars = array( array("111", 100, 50), array("222", 200, 100), array("333", 300, 150), ); echo $cars[1][0]; ?><?php $age = array(); $age["sun"] = ["20"]; $age["liu"] = ["30"]; $age["zhang"] = ["40"]; // print\_r($age); foreach ($age as $key => $value) { echo "name is " . $key . " old " . $value . "
"; } ?>
排序:
<?php $cars = array("Blinli", "wzida", "muling"); $x = sort($cars); echo $x; print\_r($cars); ?> <?php $cars = array("Blinli", "wzida", "muling"); $x = rsort($cars); echo $x; print\_r($cars); ?>$GLOBALS — 引用全局作用域中可用的全部变量
<?php $x = 10; $y = 29; function add() { // global $x, $y; // $z = $x + $y; // echo $z; $GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y']; echo $GLOBALS['z']; } add(); ?>PHP $_REQUEST 用于收集 HTML 表单提交的数据
name:
循环:
<?php $a = 0; while ($a <= 10) { echo "number is :" . $a . ""; $a++; } ?>
do while 循环:
<?php $i = 0; do { //先循环 $i++; echo "number is :" . $i . ""; } while ($i < 5);//再判断 ?>
<?php function add($x, $y) { $z = $x + $y; return $z; // echo $z; } // add(5, 15); echo "1+16" . "=" . add(1, 16); ?>
函数:
<?php function add() { $x = 10; $y = 20; $z = $x + $y; echo $z; } add(); ?> <?php function add($x, $y) { $z = $x + $y; echo $z; } add(5, 15); ?>类和对象: 类 − 定义了一件事物的抽象特点。类的定义包含了数据的形式以及对数据的操作。 对象 − 是类的实例。
<?php class Person { //定义一个类,名称为 Person 使用驼峰命名法,不能用数字开头,类似于变量的命名方式。 var $name; //定义一个变量,值为空 function say() { //定义一个函数 echo "my name is ".$this->name; } } $xm=new Person; //实例化对象,具体的使用方式 $xm->name="小明"; //对象属性的赋值 $xm->say(); //访问对象的方法 ?>超级全局变量:
<?php $string = "123"; //变量 define("DEMO", true); //常量 print\_r($GLOBALS); //超级全局变量 ?>$_REQUEST 可以接收 GET POST 发送的数据包
$_SERVER[‘PHP_SELF’]; //显示头部信息
username:
password:
<?php echo "提交的内容: " . @$\_POST["name"] . @$\_POST["password"] . "" ?>//在PHP中通过打印函数引入我们的HTML+CSS+JS
PHP 连接MYSQL数据库
1、mysql PHP<5.5版本 2012年后不建议使用,安全性差
2、mysqli mysql的扩展,mysql的升级版,安全性高,只能用于操作mysql数据库
一、面向对象的方法 NEW
二、面向过程的使用方法
3、PDO PHP DATA OBJECT 目前支持链接数据库类型12种,安全性高,基于面向对象的使用方式。
<?php $hostname="127.0.0.1"; $name="root"; $pass="root"; $db="messagebox"; $conn=mysqli\_connect($hostname,$name,$pass,$db); if (!$conn) { die("连接失败".mysqli\_connect\_error());/\* mysqli\_connect\_error()该函数保存了连接数据库的错误信息 \*/ } /\*create table students( uid int(15) not null auto\_increment, name varchar(50) not null, gender char(2), message text, primary key(uid) )\*/ $sql="select \* from users where id=1 "; // mysqli\_query($conn,$sql);执行成功返回true $query\_result=mysqli\_query($conn,$sql); if ($query\_result) { /\*如果执行成功就会执行如下的代码\*/ $result\_numbers=mysqli\_num\_rows($query\_result);/\*查询出数据库中记录条数,具体的数据没出来\*/ if ($result\_numbers>0) { $all\_result=mysqli\_fetch\_all($query\_result); /\*mysqli\_fetch\_assoc将查询的结果转换为关联型数组\*/ //mysqli\_fetch\_array()关联型和数字型 //mysqli\_fetch\_all()数字型 //var\_dump($all\_result); //$all\_result它是一个mysqli\_fetch\_all处理之后的数据,该数据是一个数组,数组的长度取决于sql的执行 //如果结果是一个记录,则$all\_result的长度是1 //如果结果是二个记录,则$all\_result的长度是2 //$all\_result保存的内容也是数组,需要遍历显示数据内容 foreach ($all\_result as $key => $value) { foreach ($value as $key => $value) { echo $value."\n"; } } } else{ echo "没数据!"; } } else{ echo "查询失败".mysqli\_error($conn); /\* mysqli\_error($conn)保存了执行SQL语句的错误信息 \*/ } mysqli\_close($conn); ?>
解决乱码:
echo “”; //指定字符集
或者:
header(“Content-Type:text/html;charset=utf-8”);
PHP 集合 HTML
<?php // echo ""; //指定字符集 header("Content-Type:text/html;charset=utf-8"); echo ' name: psswd: '; $name = @$\_POST['name']; //$\_POST 对应 form method="POST" $pwd = @$\_POST['pwd']; //接收数据 if ($name != "" && $pwd != "") { //判断当前提交的数据是否为空,不为空的情况下执行下面的代码 echo "UserName is : " . $name . ""; echo "PassWord is : " . $pwd; } ?>
(isset(KaTeX parse error: Expected 'EOF', got '&' at position 7: name) &̲& isset(pwd))
isset 检测变量是否设置,不为NULL
如果检测的对象是""(空),返回值是 1 false
var_dump 判断数据类型
PHP 常量
使用 define(变量的KEY(最好大写),变量的value,true/false,)
define(“UNMBER”,“this is a hacker”);//不能用 $ 数字 开头
<?php define("UNMBER", "this is a hacker", true); //定义常量 echo UNMBER . "";//true 忽略大小写,默认是false echo unmber; ?> <?php //结合函数使用 define("UNMBER", "this is a hacker", true); //定义常量 echo UNMBER . "
"; echo unmber . "
"; function test() { echo UNMBER; } test(); ?>
<?php $string="1234"; echo strlen($string); //计算字符串长度 echo $string[0]; //以下标方式取值 ?>
反转:
<?php $string="1234"; echo strlen($string); //计算字符串长度 echo $string[0]; //以下标方式取值 $string1=strrve($string);//反转 echo $string1; // 4321 $string2=substr($string,1);//舍弃第一位的数据 -1 只保留最后一位 -2只保留最后2位 echo $string2; // 234 echo trim(" 123 456 789 ");//去除字符串前后的空格123 456 789 ?>cmd–>php~\php -r “phpinfo();”
php~\php -f “.php文件,可以拖拽到CMD窗口”
$str1 = “123”;
echo $str1 .= “456”;
PHP 表单
HTML
style 选择器:
.error{}
p{}
#ID {}
echo htmlspecialchars(“<?php echo '123';?>”); //实体化代码输出,忽略代码本身输出内容
echo stripcslashes(“i\m abc”); //删除转义符
trim 去除左右两端的空格
echo trim(" 123 ");
preg_match( /匹配的表达式/(要用正则表达式),被匹配的字符串),返回值是 int (0|1) bool
匹配上,返回 1 false 否则为 true 0
echo preg_match(“/php/”, “you know the php is bester language”);
!preg_match 取反
Delimiter must not be alphanumeric or backslash in
分隔符不能是字母数字和
反斜线
。
span 组合行内元素 class
文件包含:引入某些文件,去使用该文件的内容。
方式有4种:
1、include “文件路径/文件名”;
如果引入文件错误,会报警告Warning,后续代码依旧会执行。
2、include_once “文件”;
用法同 include 基本一致,只需包含一次,后续可一直使用。
3、require “文件”;
包含文件时,如果找不到,会报错ERROR,后续的代码均无法执行。
4、require_once “文件”;
用法同require一致,只需包含一次,后续可一直使用。
支持目录跳转,可以使用相对路径 …/…/…file 或者绝对路径
copy 1.png/b+1.txt/a 2.png
a 表示是ASCII格式
还有兄弟不知道网络安全面试可以提前刷题吗?费时一周整理的160+网络安全面试题,金九银十,做网络安全面试里的显眼包!
王岚嵚工程师面试题(附答案),只能帮兄弟们到这儿了!如果你能答对70%,找一个安全工作,问题不大。
对于有1-3年工作经验,想要跳槽的朋友来说,也是很好的温习资料!
【完整版领取方式在文末!!】
93道网络安全面试题
内容实在太多,不一一截图了
黑客学习资源推荐
最后给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
😝朋友们如果有需要的话,可以联系领取~
1️⃣零基础入门
① 学习路线
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
② 路线对应学习视频
同时每个成长路线对应的板块都有配套的视频提供:
2️⃣视频配套工具&国内外网安书籍、文档
① 工具
② 视频
③ 书籍
资源较为敏感,未展示全面,需要的最下面获取
② 简历模板
因篇幅有限,资料较为敏感仅展示部分资料,添加上方即可获取👆