回家几天中自己积累的PHP常用知识

我是如何从 php 转型写 go 的 本来想延续上一个公众号 <<不定期更新的日常>>系列,但是想想还是先写下这篇吧。希望对那些刚转型 Go 或者有意向转型的小伙伴有所帮助。 起点 去年七月初的时候,在上家公司感觉到毕业以来第一次瓶颈,加上小公司项目半凉的状态,随即提出离职。在交接的过程中,我开始投递简历出来面试,因为学历并不是很好,加之在开源世界并没有什么拿得出手的项目,也就没对大厂抱有希望,整个期间就面了三家公司,拿了其中两家 offer,一家做直播的,一家做电商行业的,选择了电商的那家,不算很大,一千多人还是有的, 阅读详情
 
1, 语句脱离:
<?php echo "hello world"?>和
<?php
Echo “hello world”;
?>是等价的。
 
2, print_r的使用:
$a=array(1,2,”hello”,array(“one”,”two”));
则print_r($a);后输出:
Array ( [0] => 1 [1] => 2 [2] => hello [3] => Array ( [0] => one [1] => two ) )
能够很清楚的看明白数组a的结构。
 
3, var_dump 列出变量资讯
<?php
$phone="113";
var_dump(ereg("113",$phone));
?>
 
4,
<?php
echo <<< nol
hello world!
nol;
?>
Nol只是一个样式,可以换为其它字母或中文,但NOL;必须顶格写。 
 
5,
用PHP处理多个同名复选框
如果一个表单中有多个同名复选框,在提交到php时却只有一个值,而并不像asp那样是一串用逗号分割的值。解决的方法是利用数组。将复选框的name后面加上[],例如:<input type="checkbox" name="pp" value="1"> 改为:<input type="checkbox" name="pp[]" value="1">。这样php将得到一个叫pp的阵列。在提交的表单中先用Count(pp)来判断数组的个数即选中的个数,然后对数组进行分别处理就行了。
同样的道理也适应于处理下拉框的多选问题。
 
6,点击浏览器的后退按钮后,所有字段的信息都被清空了?
这是由于你在你的表单提交页面中使用了 session_start 函数。该函数会强制当前页面不被缓存。解决办法为,在你的 Session_start 函数后加入 header("Cache-control: private"); 注意在本行之前你的PHP程序不能有任何输出。

补充:还有基于session的解决方法,在session_start前加上
session_cache_limiter('nocache');// 清空表单
session_cache_limiter('private'); //不清空表单,只在session生效期间
session_cache_limiter('public'); //不清空表单,如同没使用session一般

可以在session_start();前加session_cache_limiter("private,max-age=10800");
 
7,E-mail的正确判断
eregi("^[_.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z_-]+.)+[a-zA-Z]$",$email);
 
8,file_get_contents($filename):将文件的内容全部读到出
注意,$filename必须为真实路径,可用realpath()返回路径。
例:
<?php
$file=”me.php”;
$file=realpath($file);
$con=file_get_contents($file);
?>
 
File_put_contents($con,$file);
同样$file要为真实路径。
例:
<?
$con=”hello”;
$file=”me.php”;
$file=realpath($file);
$re=file_put_contents($con,$file);
?>
 
9,array_map:将函数作用有数组的每一个单元上
例:
<?php
function cube($n)
{
    return(
$n * $n * $n);
}

$a = array(1, 2, 3, 4, 5);
$b = array_map("cube", $a);
print_r($b);
?>
    用法2:重新建一个数组
    例:
<?php
$a = array(1, 2, 3, 4, 5);
$b = array("one", "two", "three", "four", "five");
$c = array("uno", "dos", "tres", "cuatro", "cinco");

$d = array_map(null, $a, $b, $c);
print_r($d);
?>
 
10,strtr($str,$from,$to)转换字符串中的某些单元
例:
<?php
$a=hello world!!!;
Echo strtr($a,”hello”,”hi”);//转换为:hillo world!!!
?>
 
<?php
$a=hello world!!!;
$b=array(”hello”=>”hi”);
Echo strtr($a,$b); //转换为:hi world!!! (与上例不同)
?>
 
11,strpos($string,$str);    //在$string中寻$str字符若有则返回其所在位置
<?php
$str=”hello world!”;
Echo strpos($str,”w”);
?>
    12,implode(“str”,$array);    将$array数组用str字符串连接起来
    例:
    <?php
    $a=array(“hello”,”world”,”!!!”);
    Echo implode(“ ”,$a);
?>
13,split(partten,string)以正规表达式将字符串切开
例:
<?php
date = "04/30/1973";      // Delimiters may be slash, dot, or hyphen    list ($month, $day, $year) = split ('[/.-]', $date);
echo "Month: $month; Day: $day; Year: $year<br>/n";
?>
14,fopen($filepath,”a”);以只写的方式打开文件,置文件的指针于文件尾,若文件不存在,试图创建之。(在me.txt中追加内容)
例:
<?php
$file=”me.txt”;
$handle=fopen($file,”a”);
$content=”hello world!!!”;
If(fwrite($handle,$content))
{
    Echo “Write to me.txt OK!”;
}
Else echo “Write to me.txt BAD!”;
?>
15,range(int low,int high)建立一个整数数组
例:
<?php
$arr=range(1,3);
Print_r($arr);//输出:array([0]=>1,[1]=>2,[2]=>3)
?>
16,htmlspecialchars(str) 将str字符串中的html标记置换
例:
<?php
$a=”<h1>hello world</h1>”;
Echo htmlspecialchars($a);   //输出:<h1>hello world</h1>
?>
17,用Apache后,主页出现乱码

方法一:
AddDefaultCharset ISO-8859-1 改为 AddDefaultCharset off

方法二:
AddDefaultCharset GB2312
 
18,$_SERVER['HTTP_REFERER']。得到的数据是传递到本页面的上一页面的UTL地址
用途:1、防止盗连,比如我是个下载软件的网站,在下载页面我先用referer来判断上一页面是不是自己网站,如果不是,说明有人盗连了你的下载地址。
2、电子商务网站的安全,我在提交信用卡等重要信息的页面用referer来判断上一页是不是自己的网站,如果不是,可能是黑客用自己写的一个表单,来提交,为了能跳过你上一页里的javascript的验证等目的。
19,nl2br转换新行为html中的<br>
从数据库中得到数据后,用ehco nl2br($row[‘content’]);
 
 
 
 
2020 PHP 面试面经分享,历时三个月拿,最终入手字节,面试经历经验分享 这是一篇迟到的面经。为什么呢?因为我现在已经入职字节快一周了。本应该在提离职后,入职字节前的一段时间内,完成历时差不多 3 个月的面试经历。但是,emem..... 懒嘛 ……^ _ ^。写下这篇文章的目的,一方面是:整理面试知识、经验;另一方是:给同样准备找工作、跳槽的你,自己的一些经验。 先自我介绍一下:本人双非、一个普通的二本本科生,大学期间很有幸加入 Topcoder 工作室,工作室有两部分:ACM 算法、项目。加入工作室后,由于对算法不怎么感兴趣,就选择去了项目组。项目组主要学习一些 We. 阅读详情

相关推荐

转行软件测试必需要知道的知识

目录 1前言 2、零基础转行测试首先需要学习哪些内容呢? 1认识软件测试 2软件测试相关文档的学习和bug提交规范的学习 3功能测试项目实战 4常用测试工具学习 5简历编写和面试准备 6做测试要学习的软技能 7、自学的顺序是怎样的呢?有哪些细节的东西需要学呢? 1前言 随着现在互联网行业的迅猛发展,越来越多的人想涌入进来,因为大家都觉得IT行业工资高,做测试门槛又低,是的,入门门槛确实比较低,但是要做好的话,还是有点难的,毕竟术业有专攻嘛,现在的测试行业已经不是以前的那个时代了

MXB1220的博客 1429

php培训多久能学会,PHP零基础自学多久可以学会?

PHP零基础自学多久可以学会?PHP几乎是入门最简单的一种流行语言了,熟悉语法、常用的函数就可以做些简单的web开发,例如写个访客留言板、发送email等等简单工作。达到这个程度,一般从几天到一月不等。在决定进入PHP编程的世界之前,你要做一下自我评估。下面的评估条件取决于你是否具备自学php编程。1.对现在工作很满意。不用换工作。2.对PHP有很深厚的兴趣。3.有一点编程基础。比如说接触过C、j...

weixin_42510962的博客 290

MySQL 优化 - index_merge 导致查询偶发变慢

今天遇到了一个有意思的问题,线上数据库 CPU 出现了偶发的抖动。定位到原因是一条查询语句偶发变慢造成的,随后通过调整表中的索引解决。优化器通过某种机制检测到 index_merge 能带来性能提升,某些情况下不会带来提升,反而会耗费更长的时间,属于优化器的缺陷,可以通过调整表中的索引来解决。

分享既学习 1254

PHP时间处理(学习积累)

1、UNIX时间戳值--》显示形式1)date(a,b)函数   a--你希望得到的格式   b--UNIX时间戳值  eg:date("Y-m-j H:i:s",time());2004-09-14 00:00:002)strftime()函数   与date()的区别是格式的不同  eg:strftime(“%Y-%m-%d %H:%M:%S”,time());2004-09-14 00:00

成长·永无止境! 1124

普冉PY32F003定时器实战:从HSE时钟配置到500ms精准闪烁LED(附完整代码)

本文详细解析了普冉PY32F003单片机定时器的实战应用,从HSE时钟配置到实现500ms精准LED闪烁。通过完整的代码示例和深入的技术分析,帮助开发者掌握定时器参数计算、中断优先级管理及调试技巧,适用于各类嵌入式开发项目。

weixin_30608503的博客 450

Cadence Allegro安装全攻略:从准备到优化的完整指南

本文提供了一份详尽的Cadence Allegro安装教程,涵盖从系统准备、硬件要求到获取安装文件的完整前期工作。指南逐步解析了自定义安装、路径选择及核心组件配置,并重点阐述了许可证服务器的环境变量设置与服务启动等关键激活步骤,最后给出了首次启动验证、个性化优化及常见问题排错方案,助您高效完成安装与配置。

weixin_29243063的博客 185

高中学历的PHP程序员如何找工作

<br />那位先知者帮忙提供经验刚出来找工作,带个作品吧?<br />找能实习的地方,不给钱也行。或自己练习做项目,买一个域名和一块空间,发到网上。<br />在前程无忧看了下,学历真是大大的障碍,就是实习,可是在哪里有呢,更何况在上海!!!<br />学历虽然可以说不重要 但是理论基础知识还是很重要的 做的越深越会想要知其所以然<br />自己花几天时间,做个拿手的作品,把技术学好,学历不用官,河北大学校长是博士,到现在结果还是假的。学历可以造假,技术才是真的。是的,不过有些脑残的老板只看学历不看能力,

jjhy5247的专栏 1447

STM32G474使用HRTIM触发多路ADC采样,通过DMA传输,通过串口打印显示,实现PWM中间时刻采样,避免开关噪声

本章工程使用HRTIM定时器进行ADC的触发,打开主定时器,子定时器A,B,C。(本工程未使用到A与C定时器,配置时可无需打开)主定时器配置:设置主定时器的频率为100KHz,并且设置自动更新以及自动重装载值。子定时器B设置:设置子定时器B为100KHz,并且每九次计数完成后产生一次中断。配置如上:1.打开自动预装载值2.打开自动复位3.设置死区时间以及互补PWM4.定时器复位触发更新寄存器5.定时器翻转重置更新6.重置触发源(定时器计数器在发生更新事件时重置)

weixin_41407439的博客 4907

学习php的心得

PHP以其简单易学的特点,以及敏捷开发的优势,从一个几乎不为人知的开源项目,慢慢成长为技术人员首选的动态Web设计工具。。以下就是小编给大家整理的学习php的心得。 系统学习php 1.HTMl做web开发必须要接触一门语言,现在这个语言已经发展到HTMl5,但是大很多浏览器对HTMl的兼容性不好,我们学习只需要学习XHTML就可以,我在网页上点击右键查看源码哪里面写的就是HTMl 2.CSS有了...

petty8890的博客 1383

Word多级标题出现黑块的解决思路(word 数字必须介于1-1638之间)

遇到多级目录出现黑块问题,看到一篇博客完美解决,在此记录。

AI_Optimization的博客 3714

halcon与c#联合编程实现相机控制+图像平移缩放+日志记录+缺陷检测+路径规划

halcon与c#联合编程实现相机控制+图像平移缩放+日志记录+缺陷检测+路径规划 前言 本人近期在工作中遇到需要对某场景下利用海康相机进行图像缺陷检测与对应路径规划。通过对海康相机示例代码进行吸收与借鉴,最终实现了对海康相机的控制,并增加HSmartWindowControl控件,实现图像的实时显示与平移缩放功能;通过listview+toolstrip实现日志显示与类型(提示、警告、错误)分类;同时自行编制算法实现对缺陷的识别以及缺陷外扩矩形范围内的路径规划。 1.日志记录 代码如下(示例):

weixin_37864926的博客 2717

php data时间计算,php中时间函数date及常用的时间计算 | LsevenTT博客-站群哥

曾在项目中需要使用到今天,昨天,本周,本月,本季度,今年,上周上月,上季度等等时间戳,趁最近时间比较充足,因此计划对php的相关时间知识点进行总结学习1,阅读php手册date函数常用时间函数:checkdate()验证一个时间是否正确date_default_timezone_get()取得当前脚本所使用的时区date_default_timezone_set()设定脚本所用时区ini_se...

weixin_35384453的博客 257

Rockchip硬件编码实战:5分钟搞定RK3588上的H.265视频压缩(附FFmpeg集成指南)

本文深入解析了在Rockchip RK3588平台上利用硬件编码器实现高效H.265视频压缩的完整实战流程。文章详细介绍了MPP库的基础使用、FFmpeg集成方法,并重点分享了零拷贝、多实例编码等关键性能优化技巧,帮助开发者充分发挥RK3588的硬件编码能力,实现从YUV原始数据到高质量H.265码流的高效转换。

h6i7j8的博客 1093

学习php开发难吗,PHP开发自学难吗,PHP自学要多长时间?

PHP几乎是入门最简单的一种流行语言了,熟悉语法、常用的函数就可以做些简单的web开发1.基础部分:HTML+CSS+DIV学习方法:看手册或看书,跟着写代码,看视频教程,因为这是最基础的东西,不是很难掌握,自己一个人琢磨时间有点长。学习周期的话,大概在10天左右,这10天指的是你熟练掌握了HTML+CSS+DIV,接下来该进入实战了。在网上找几个网页,自己做做,不用太多,但起码得5-8个,而且兼...

weixin_36001196的博客 1235

(四)C++自制植物大战僵尸游戏启动流程

鼠标左键单机VS2022上方工具栏中进行项目启动。第一次启动项目需要编译项目中所有代码文件,编译生成需要一定的时间。不同性能的电脑需要消耗的时间差别可能较大,通常在几分钟到几十分钟之间。编译成功后会自动启动运行游戏。qi编译成功后自动启动运行游戏如下图。

尔灵尔亿的博客 2466

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

学习PHP心得体会

以下就是小编给大家整理的学习php的心得。

asdfggzc的博客 535

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

PHP原生类及其利用

简单易懂的PHP原生类及其利用讲解

Elite的博客 886

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

php 换行输出_PHP之校园连接企业之路

简介:在前不久,和一位经常往来教育和企业的朋友聊天,我问了他一句:当前学生就业班教育的痛点,他想了想说:当前学校教育的痛点,就是教育与企业脱节,学校走出来的学生无法直接在企业中工作用起来。我之后回到家中想这个问题,自己作为一个社会工作者,如何奉献一点力量?!我想了想,就从自己所学的入手,于是就有了这个PHP的课程,对于计算机系的同学或者想要从事计算机行业的同学,提供一点帮助。在课程开始之...

weixin_39708636的博客 196

学习课程php心得体会

PHP的详细讲解

asdfggzc的博客 433

PHP学习总结

我们可以看 w3techs.com 网站的统计,在网站的服务器端,使用 PHP 的占 81.7%, 使用 ASP.NET 的占 16.1%, 使用 Java 的占 3.0%, 使用静态文件 (static files) 的 占 1.6%, 剩下的使用 ColdFusion 0.7%, Ruby 0.6%, Perl 0.5%, Python 0.2%, JavaScript 0.2%, Erlang 0.1%, Miva Script 0.1%。已经有很多的大型网站都是使用了 PHP 开发的。

m0_70595318的博客 174

PHP项目实践学习心得

(入门是从disucz,PHPWind和国外的phpbb看起,还有就是目前最流行的开源BLOG程序),我尽可能的收集网络上的PHP开源程序,到目前为止,我收集并下载的PHP开源程序有2GB大小,包括BBS,BLOG,CMS等。

2201_75815645的博客 578

php mvc和Java mvc_PHP的MVC框架哪一个性价比最高?yii2 还是 thinkphp

哪个 PHP 框架更好是一个古老的问题,时至今日终于有了答案。PHP 框架史话PHP 是一种神奇的技术,可以嵌入 HTML 代码中执行。PHP 依赖这个前无古人后无来者的运行方式,成为了一门 “语言”。PHP 为 web 而生,伴随着 web 成长,她本身就是一个高度抽象的框架,所有内置函数,例如 phpinfo(),本质上都是强大功能的一个接口。在本身就是 web 框架的 PHP 之上,懒惰的程...

weixin_33642448的博客 201

php中如果想要打印出来的结果换行怎么操作_PHP之校园连接企业之路

在前不久,和一位经常往来教育和企业的朋友聊天,我问了他一句:当前学生就业班教育的痛点,他想了想说:当前学校教育的痛点,就是教育与企业脱节,学校走出来的学生无法直接在企业中工作用起来。我之后回到家中想这个问题,自己作为一个社会工作者,如何奉献一点力量?!我想了想,就从自己所学的入手,于是就有了这个PHP的课程,对于计算机系的同学或者想要从事计算机行业的同学,提供一点帮助。在课程开始之前,先说一下,课...

weixin_39673293的博客 996

php 资源

PHP 框架史话 PHP 是一种神奇的技术,可以嵌入 HTML 代码中执行。PHP 依赖这个前无古人后无来者的运行方式,成为了一门 “语言”。PHP 为 web 而生,伴随着 web 成长,她本身就是一个高度抽象的框架,所有内置函数,例如phpinfo(),本质上都是强大功能的一个接口。 在本身就是 web 框架的 PHP 之上,懒惰的程序员依然想干更少的活儿做到同样的功能,所以就

探秘 836

为什么php项目用Java重构_PHP重构的意义和方法

运行了一两年的系统,用户量大增。没高兴几天,突然出了问题。服务器当机、数据库爆库、数据丢失。原有的技术人员解决不了,短时间内也很难招到合适的人来解决,怎么办?找PHP重构工坊,专注PHP重构多年,轻松帮您解决。首先,談谈重构的意义。在不改变软件的外部输入输出的情况下,优化内部的结构。“哎~你是不是多事啊?既然啥都不改变为什么要修改?还用个好听的名字叫重构?”重构当然不是多事了。用水桶去河里打的水,...

weixin_33781072的博客 1074

redmine的知识库插件-Redmine Knowledgebase plugin,程序员们的知识需要管理

前几天看了田志刚老师的《你的知识需要管理》这本书,受益匪浅,作为一个IT从业人员,也是属于知识类工作者,对于知识的获取、使用、总结,直接影响到你的职业发展以及收入; 对于一个IT部门来说,它的知识的积累决定了它重复犯错误概率,知识的传承能力决定这个部门的自我更新能力以及这个部门的可持续发展能力,因此必须要讲IT部门的知识库建立起来,并且能够用起来为我、为...

weixin_34010949的博客 1031
上一篇: 发个测试本地是否支持Cookie的代码
下一篇: 关于论坛发帖中所见即所得功能实现的讲解
dx_andy
博客等级 码龄19年 8粉丝 31原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值