php $a=array("a"=>"Cat","b"=>"Dog","c"=>"Cat"); print_r(array_unique($a)); ? (参见例子 4) 语法 array_slice(array,start,length,preserve) 参数 描述 array 必需。规定数组。 start 必需。数值。 foreach($arr as $v){ $flag[] = $v['norder']; } array_multisort($flag, SORT_DESC, $arr); p($arr); php 如果传递给这个函数的数组是一个空数组,或者是一个没有经过设定的变量,返回的数组元素个数就是0; array_count_value():统计每个特定的值在数组$array中出现过的次数; 如: $array=array(4,5,1,2,3,1,2,1 array_count_value($array); 将创建一个名为$ac数组,该数组包括: 关键字 值 4
log4j2是一个比较新的日志框架,作为log4j的升级版本,修复了它的锁竞争问题提升了性能,提供了丰富的组件支持以及良好的语义配置。 如何使用 同样使用SLF4J来作为日志门面,需要引入以下依赖。 </groupId> <artifactId>log4j-slf4j-impl</artifactId> <version>${log4j2.version}</version package com.lihongkun.labs.log4j2; import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** * 4 115,662 3,948,502 8 136,350 4,018,552 16 133,302 4,040,151 32 122,303 4,084,070 log4j2的异步日志配置文件如下 线程数 log4j2 logback 1 186,722 7,538,561 2 156,574 4,879,026 4 112,581 3,948,502 8 105,942 4,018,552 16
前言 最近接触了typecho 所以PHP肯定就离不开手了 这里记录一些平常开发的一些小技巧 莫名的用户bug 不要只处理error,而忽略warning和notice,这可能会导致日后的莫名其妙的问题 引入文件觉得路径 不管是 include还是什么函数引入文件使用绝对路径比使用相对路径引用速度高 因为这样可以减少PHP目录搜寻时间 当然这点速度也许无用 但是在层层引用中导致工作目录变化 相对路径会炸的 php function authorized($username, $page) { if (! php function authorized($username, $page) { return (! 如果你想知道脚本开始执行(译注:即服务器端收到客户端请求)的时刻,使用$_SERVER[‘REQUEST_TIME’]要好于time(),这是PHP官方提供的一个全局变量。
php
session_start();
if(isset($_SESSION['userid'])) {
session_destroy();
echo "你已经推出了";
} else {
echo "你还没有登录呢";
}
echo "
";
echo "你想登录吗? >
意思是我登陆后按退出了就会清除掉session,否则就是没有session的时候就是你还没有登录呢的时候
这时候就会
echo "你想登录吗?";
特殊说明: 第三方平台不会及时同步本文章最新内容,如果觉得本文资料不全,可以访问本人Java博客搜索:标题类似的关键字 上述文章均是我实际操作后产出,烦请各位,请勿直接盗用!转载记得标注原文链接:www.zanglikun.com
本文主要和大家分享php环境搭建wampserver、Apache、Mysql和php php环境搭建csdn php环境搭建详解 ,希望能帮助到大家。 wampserver2.5-Apache-2.4.9-Mysql-5.6.17-php5.5.12-32b搭建php环境。 在win下,下载wampserver2.5-Apache-2.4.9-Mysql-5.6.17-php5.5.12-32b.exe,默认安装。 配置文件D:\wamp\bin\apache\apache2.4.9\conf\httpd.conf 修改如下: 1 Listen 0.0.0.0:8088 2 Listen [::0]:8088 3 4 以上就介绍了php环境搭建wampserver、Apache、Mysql和php,包括了wampserver,php环境搭建方面的内容,希望对PHP教程有兴趣的朋友有所帮助。
FunnyPi-全志T113-S3卡片电脑 作者:flose FunnyPi-T113是一款基于全志T113-S3/D1S处理器的完全开源多功能开发板,设计FunnyPi最初的目的是想满足日常学习,结合 此外,这款开发板适配全志Tina-Linux,支持快启,最重要的一点是,本开发板所有阻容使用0603封装且将绝大部分元件放在了正面,非常方便手焊! 基于全志T113的串口助手 作者:huerli 本项目是基于全志T113-S3制作的无线串口调试器,上位机由Qt制作的串口助手客户端、下位机数据采集转发装置组成,配有无线WiFi蓝牙模组,可以对下位机采集到的数据显示以及对于数据绘制波形
计算机码 计算机码:计算机在实际存储数据的时候,采用的编码规则(二进制规则) 计算机码:原码、反码和补码,数值本身最左边一位是符号位,正数为0,负数为1 原码:数据本身从十进制转换成二进制得到的结果 正数:左边符号位为0 (正数的原码、反码和补码就是原码本身) 负数:左边符号位为1 反码:针对负数,符号位不变,其他位取反(01转换) 补码:针对负数,反码+1 系统中存在两个0:+0和-0 +0:00000000 -0:10000000 原码 取反:11111111
4. 用单引号替代双引号引用字符串以实现 PHP 性能优化。 5. 用 i+=1 代替 i=i+1。符合 c/c++的习惯,效率还高。 6. 优化 Select SQL 语句,在可能的情况下尽量少的进行 Insert、Update 操作,达到 PHP 性能优化的目的。 7. 尽量的少进行文件操作,虽然 PHP 的文件操作效率也不低的。 尽可能的使用 PHP 内部函数。 9. 在可以用 PHP 内部字符串操作函数的情况下,不要用正则表达式。 10. 11.尽量静态化 如果一个方法能被静态,那就声明它为静态的,速度可提高 1/4,甚至我测试的时候,这个提高了近三倍。当然了,这个测试方法需要在十万级以上次执行,效果才明显。 大事化小,1+1>2。 16.最好不用@ 用@掩盖错误会降低脚本运行速度,并且在后台有很多额外操作。用@比起不用,效率差距 3 倍。
1.软件版本:PHP版本应该从PHP官方提供的下载页面下载,注意不要下载beta版本。 PHP官网下载地址为:http://www.php.net/downloads.php 2.控制脚本访问权限:PHP默认配置允许php脚本程序访问服务器上的任意文件,为避免php脚本访问不该访问的文件 ,从一定程度上限制了php木马的危害,需设置php只能访问网站目录或者其他必须可访问的目录。 proc_close,proc_open,pcntl_exec 4.关闭注册全局变量:在PHP中提交的变量,包括使用POST或者GET提交的变量,会自动注册为全局变量,能够直接访问,这是对服务器非常不安全的 打开php.ini,安全加固配置方式如下,关闭注册全局变量设置: register_globals = Off ? 注:默认php配置文件该选项是关闭的。 PHP 5.3.*与5.4.
php header("content-type:text/html;charset='utf-8'"); if(empty($_COOKIE['autologin']))//一周内自动登录不点击的情况下 islogin']))||(empty($_COOKIE['username'])))//意思是你第一没有做登录或者是你没有填写用户名的话,就请登录 { echo "<a href='login.<em>php</em> 如果出现了按下登录按钮的话,或者输入用户名的话,就不应该出现请登录的画面了呀 } //如果点击了一周七天登录的话,就不应该出现您好请登录的话了,应该出现名字 echo "<a href='login.php autologin'])) { if((empty($_COOKIE['islogin']))||(empty($_COOKIE['username']))) { echo "<a href='login.<em>php</em> ; } echo "<a href='login.php'>退出"; 否则的话就是有那就调用出用户名!!!就行了,下面是退出,为什么,如果你要退出你是吧
-- log4j2的依赖--> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>2.19.0</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j2 -impl</artifactId> <version>2.19.0</version> </dependency> log4j2.xml主配置文件 <? %-3level %logger{1024} - %msg%n"/> </console> </appenders> </configuration> 运行结果 使用log4j2
log4j2是什么? API文档:http://logging.apache.org/log4j/2.x/log4j-api/apidocs/index.html log4j、slf4j、log4j2、logback之间的关系 slf4j:slf4j是对所有日志框架制定的一种规范、标准、接口,并不是一个框架的具体的实现,因为接口并不能独立使用,需要和具体的日志框架实现配合使用(如log4j、logback、log4j2)。 log4j:log4j是apache实现的一个开源日志组件。 logback:logback同样是由log4j的作者设计完成的,拥有更好的特性,用来取代log4j的一个日志框架,是slf4j的原生实现。
PHP中的网络组件相关函数 作为一门以 WEB 开发为主战场的编程语言来说,PHP 即使是在目前这个大环境下,依然也是 WEB 领域的头号玩家。 [2]=> // string(13) "mx1.baidu.com" // [3]=> // string(14) "jpmx.baidu.com" // [4] // gopher: 70 // finger: 79 // pop3: 110 // www: 80 var_dump(getservbyport(80, 'tcp')); // string(4) 测试代码: https://github.com/zhangyue0503/dev-blog/blob/master/php/2021/03/source/2.PHP%E4%B8%AD%E7%9A%84% E7%BD%91%E7%BB%9C%E7%BB%84%E4%BB%B6%E7%9B%B8%E5%85%B3%E5%87%BD%E6%95%B0.php 参考文档: https://www.php.net
echo preg_replace("/[\x{4E00}-\x{9FFF}]+/u", 'Many Test Info.' => A:3 // [7] => A:4 // ) echo "preg_replace 的结果:", PHP_EOL; print_r(preg_replace($pattern, $replace /2021/03/source/6.PHP中PRGE正则函数的学习.php on line 332 // 1 // print_r(preg_last_error_msg()); // php8 而在 测试代码: https://github.com/zhangyue0503/dev-blog/blob/master/php/2021/03/source/6.PHP%E4%B8%ADPRGE%E6%AD %A3%E5%88%99%E5%87%BD%E6%95%B0%E7%9A%84%E5%AD%A6%E4%B9%A0.php 参考文档: https://www.php.net/manual/zh/book.pcre.php
PHP全栈学习笔记4 php和JavaScript,掌握JavaScript基础,自定义函数,流程控制语句,事件,调用JavaScript脚本,在PHP中使用JavaScript。 break; } <script language="javascript"> function check(){ var year1 = form.year.value; if((year1%4= $time3 = strtotime("2014-2-4"); $sub1 = ceil(($time2 - $time1) / 3600); //60 * 60 DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 浏览器最多允许存储300个cookie文件,每个cookie文件最多保存数据不能超过4kb,很多浏览器都限制一个站点最多保存20个cookie,每个域名最多支持20个cookie。
$_POST并非是HTTP POST过来的数据, 如json格式的数据就没法接受,这是因为由于历史原因,php只能解析Content-Type为 application/x-www-form-urlencoded 或 multipart/form-data的Http请求,只不过现在json流行了,如下处理即可: $_POST = json_decode(file_get_contents('php://input 一般strlen函数执行起来相当快,因为它不做任何计算,只返回在zval 结构(C的内置数据结构,用于存储PHP变量)中存储的已知字符串长度。 但是,由于strlen()是函数,多多少少会有些慢,因为函数调用会经过诸多步 骤,如字母小写化(译注:指函数名小写化,PHP不区分函数名大小写)、哈希查找,会跟随被调用的函数一起执行。
$_POST并非是HTTP POST过来的数据, 如json格式的数据就没法接受,这是因为由于历史原因,php只能解析Content-Type为 application/x-www-form-urlencoded 或 multipart/form-data的Http请求,只不过现在json流行了,如下处理即可: $_POST = json_decode(file_get_contents('php://input 一般strlen函数执行起来相当快,因为它不做任何计算,只返回在zval结构(C的内置数据结构,用于存储PHP变量)中存储的已知字符串长度。 但是,由于strlen()是函数,多多少少会有些慢,因为函数调用会经过诸多步骤,如字母小写化(译注:指函数名小写化,PHP不区分函数名大小写)、哈希查找,会跟随被调用的函数一起执行。 [代码]php代码: if (strlen($foo) < 5) { echo “Foo is too short”$$ } //与下面进行比较 if (!
springboot06、log4j2日志配置 目录 前言: 1、pom配置 2、log4j2-spring.xml配置文件 3、在application.properties中引入log4j2的配置 4、log4j使用 ---- 前言: 日志接口(slf4j) slf4j是对所有日志框架制定的一种规范、标准、接口,并不是一个框架的具体的实现,因为接口并不能独立使用,需要和具体的日志框架实现配合使用 LogBack:logback同样是由log4j的作者设计完成的,拥有更好的特性,用来取代log4j的一个日志框架,是slf4j的原生实现。 Log4j2:Log4j2是log4j 1.x和logback的改进版,据说采用了一些新技术(无锁异步、等等),使得日志的吞吐量、性能比log4j 1.x提高10倍,并解决了一些死锁的bug,而且配置更加简单灵活 4、log4j使用 包: import org.slf4j.Logger; import org.slf4j.LoggerFactory; 声明: private final Logger log =
虽然已经停止维护了,但目前绝大部分企业都是用的log4j。 LogBack:是Log4j的一个改良版本 Log4j2:Log4j2已经不仅仅是Log4j的一个升级版本了,它从头到尾都被重写了 日志门面slf4j 上述介绍的是一些日志框架的实现,这里我们需要用日志门面来解决系统与日志实现框架的耦合性 使用了slf4j后,对于应用程序来说,无论底层的日志框架如何变,应用程序不需要修改任意一行代码,就可以直接上线了。 为什么选用log4j2 在这列举一下一些网上其他博文中对它们的性能评测: ? log4j2优越的性能其原因在于log4j2使用了LMAX,一个无锁的线程间通信库代替了,logback和log4j之前的队列. 并发性能大大提升。 整合步骤 1. --Configuration后面的status,这个用于设置log4j2自身内部的信息输出,可以不设置,当设置成trace时,你会看到log4j2内部各种详细输出--> <!