注册 / 登录

清河洛

您现在的位置是:首页>后端编程>php学习

php学习

  • php中的命名空间

    PHP命名空间(namespace)是在PHP5.3中加入的,可以解决以下两类问题:1、用户编写的代码与PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲突。2、为很长的标识符名称(通常是为了缓解第一类问题而定义的)创建一个别名(或简短)的名称,提高源代码的可读性。使用namespace关键字定义命名空间定义命名空间的语法格式语法格式1:namespace 命名空间1; ... namespace 命名空间2; ... 直到下一个namespace语句之前的所有代码都属于该命名空间 语法格式2:namespace 命名空间1{...} namespace 命名空间2{...} 当一个文件中有多个命名空间时推荐使用语法格式2 如果一个文件中有全局的命名空间,只能使用语法格式2(大括号形式),全局代码用一个不带名称的namespace语句namespace 命名空间1{...} namespace {...//全局代码} 1、命名空间可以有多个层级,各个层级之间使用反斜杠""分隔

    发布时间:2021-01-31 11:40:46
  • php中的declare结构

    declare结构用来设定一段代码执行指令的行为可选的行为指令有三个:encoding="coding_str":为代码指定其编码方式strict_types=1|0:调用函数传值是否应用严格类型,需要在编译时指定--enable-zend-multibyte,否则declare中的encoding值会被忽略ticks=N:代码中解释器每执行N条可计时的低级语句就会触发的事件declare语句的格式有两个:declare(ticks=1) { // 这里写完整的运行代码}和declare(ticks=1);// 这里写完整的运行代码传入的指令是在文件编译时处理的,所以指令只接受字面量的值,无法使用变量和常量// 这样是有效的declare(ticks=1);// 这样是无效的:const TICK_VALUE = 1;declare(ticks=TICK_VALUE);ticks指令不是所有语句都可计时。通常条件表达式和参数表达式都不可计时。在每个ti

    发布时间:2021-01-30 16:49:43
  • php中的php-fpm进程管理

    web服务器本身不能处理php,当接收到请求后,通过匹配后缀知道该请求是个动态的php请求,会把这个请求转给指定的php解释器处理,并把结果返回给客户端。在php-cgi的年代,总是每一个请求过来后,都要创建一个进程,读取配置,初始化环境,返回数据,退出进程。php-fpm启动后会创建一个主进程(master)并且监听指定端口,master进程会根据配置要求去创建若干子进程(worker),用于处理实际的业务,当一个请求来的时候,通过master传递给worker,这样只需要主进程(master)读取一次配置并初始化执行环境(先读php.ini,然后读取conf配置)master进程的主要作用就是管理worker进程,负责fork或者kill掉子进程。在启动时根据配置文件会预先启动一定数量的worker。当请求比较多worker处理不过来时,master会fork新的worker进程处理。如果空闲的进程较多时,就会kill掉一些worker进程,避免占用浪费系统资源。自从php5.3.3

    发布时间:2020-05-19 17:38:02
  • PHP的命令行操作

    PHP作为一门web开发语言,通常情况下我们都是在Web Server中运行PHP,使用浏览器访问,因此很少关注其命令行操作以及相关参数的使用,但是,特别是在类Unix操作系统上,PHP可以作为一门脚本语言执行与shell类似的处理任务。在文件脚本中,可以通过php_sapi_name()函数获取该脚本文件的运行环境,如在命令行下该函数返回''cli'',在浏览器该函数返回"cgi-fcgi"(不同的环境配置可能显示不同) -a:以交互式shell模式运行,可以执行一些简单的任务,而不需要新建一个php文件。 -c:指定php.ini文件所在的目录 -n:指定不使用php.ini文件 -d foo[=bar]:定义一个INI实体,key为foo,value为''bar'' -e:为调试和分析生成扩展信息 -f:解释和执行文件 -h:打印帮助 -i:显示PHP的基本信息 -l:进行语法检查 (lint)

    发布时间:2020-03-04 10:44:48
  • php中的哈希函数

    单独的hash算法函数:md5函数:md5(string $str[,bool $raw_output=false]):计算字符串的MD5散列值 md5_file(string $filename[,bool $raw_output=false]):计算指定文件的MD5散列值 raw_output:如果为TRUE,将以16字符长度的原始二进制格式返回。默认为false,返回32字符长度的十六进制数字字符串。 sha1函数:string sha1(string $str[,bool $raw_output=false]):计算字符串的sha1散列值 string sha1_file(string $filename[,bool $raw_output=false])计算指定文件的sha1散列值 raw_output:如果被设置为TRUE,将以20字符长度的原始二进制格式返回。默认为false,返回40字符长度的十六进制数字字符串。 crc32函数:crc32(string

    发布时间:2019-12-26 16:18:47
  • php操作redis

    redis扩展模块下载地址:https://pecl.php.net/package/redisRedis类和RedisException类Redis类用于创建Redis客户端:$redis=new Redis();如果无法访问Redis服务器,会抛出RedisException异常对象(连接问题,Redis服务已关闭,或者redis主机过载等),在任何其他不涉及无法访问的服务器(如密钥不正确,无效命令等)的情况下,将返回FALSE预定义常量Redis::REDIS_STRING:StringRedis::REDIS_SET:SetRedis::REDIS_LIST:ListRedis::REDIS_ZSET:Sorted setRedis::REDIS_HASH:HashRedis::REDIS_NOT_FOUND:Not found / other使用Redis类创建的Redis客户端对象连接redis:连接到redis服务器:$redis->connect($host

    发布时间:2019-09-10 15:58:06
  • PHP中的异常和错误处理

    在PHP5中所有错误异常都是基于Exception类,所有具体的异常类都是Exception的子类。而所有的errors都是致命错误或是可恢复性致命错误,是不能被捕获的(只会强制终止脚本)在PHP7中,致命或是可恢复性错误(E_ERROR和E_RECOVERABLE_ERROR)可以捕获,而不是中止脚本(某些特定的情况下仍然会强制终止脚本,如内存不足)。为了防止PHP5的代码即使接收到的此类错误仍然会终止程序,致命或是可恢复性错误抛出并不延伸自Exception类,而是实例化一个新的异常类ErrorThrowable类:为了联合这两个异常分支,Exception和Error都实现了一个新的接口Throwable,PHP7中新的异常层次如下:Throwable |- Exception implements Throwable |- ... |- Error implements Throwable |- TypeError

    发布时间:2019-07-04 19:24:17
  • php中模块加载相关函数

    get_loaded_extensions([ bool $zend_extensions = false] )返回PHP解析器里所有编译并加载的模块名。 zend_extensions:只返回 Zend 扩展,并非普通扩展(如mysqli)。默认是 FALSE (返回普通扩展)。 可以用phpinfo()查看所有已加载的有效扩展名称,也可是使用命令行php -m参数来列出所有已加载的有效扩展 get_extension_funcs( string $module_name)该函数返回module_name(这个参数必须是小写的)模块内定义的所有函数的名称。extension_loaded( string $name):检查一个扩展是否已经加载。dl(string $library):运行时载入指定的library(依赖于平台。如sockets在Unix平台为sockets.so,而在Windows上是php_sockets.dll)扩展,在安全模式,无法使用dl()。

    发布时间:2019-06-17 15:16:12
  • PHP中的OpenSSL函数

    openssl_cipher_iv_length(string $method):int 获取指定加密算法($method)的加密结果初始化向量(iv)长度 openssl_csr_export_to_file(mixed $csr,string $outfilename[, bool $notext = true]):bool 获取证书签名请求($csr,一般由openssl_csr_new()返回) 并保存在以$outfilename命名的PEM格式文件中 $notext影响输出的冗余度。如果为FALSE,输出内容将包含附加的人类可读信息。 openssl_csr_export(mixed $csr,string &$out[,bool $notext = true]):bool 将csr通过引用保存成PEM格式的字符串($out) openssl_csr_get_public_key(mixed $csr):resource

    发布时间:2019-06-17 15:08:27
  • php的魔术常量和内核预定义常量

    有八个魔术常量它们的值随着它们在代码中的位置改变而改变,称之为魔法常量,魔法常量不区分大小写:__LINE__:文件中的当前行号。__FILE__:文件的完整路径和文件名。如果用在被包含文件中,则返回被包含的文件名__DIR__:文件所在的目录。如果用在被包括文件中,则返回被包括的文件所在的目录。等价于dirname(__FILE__)。除非是根目录,否则目录中名不包括末尾的斜杠。__FUNCTION__:当前函数名称,在哪个函数中使用,就返回哪个函数名__CLASS__:当前的类名 在哪个类中使用,就返回哪个类的类名__TRAIT__:Trait的名字(PHP 5.4.0 新加)。自 PHP 5.4 起此常量返回 trait 被定义时的名字(区分大小写)。Trait 名包括其被声明的作用区域(例如 FooBar)。__METHOD__:类的方法名,返回该方法被定义时的名字(区分大小写)。__NAMESPACE__:当前命名空间的名称(区分大小写),此常量是在编译时定义的PHP提供了大

    发布时间:2019-05-06 16:51:12
首页 上一页 下一页 尾页
共52条 当前1/6页


网址导航