ホームページ  >  記事  >  バックエンド開発  >  PHP共通関数集

PHP共通関数集

不言
不言オリジナル
2018-04-28 12:20:593608ブラウズ

この記事では主に PHP でよく使われる関数をまとめて紹介しますので、必要な方は参考にしてください



PHP is_numeric() 関数


作成者 Chen、最終更新日 2016-12-02

定義と使用法

is_numeric() — 変数が数値か数値文字列かを確認します


構文

bool is_numeric ( mixed $var )

If var が数字または数値文字列の場合は、TRUE を返し、それ以外の場合は FALSE

パラメータvar 是数字和数字字符串则返回 TRUE,否则返回 FALSE
参数 描述
var 允许传入任意参数。

技术细节

返回值: 説明
var では、任意のパラメータを渡すことができます。
🎜技術的な詳細🎜
戻り値: 🎜 var が数値または数値文字列の場合は TRUE を返し、それ以外の場合は FALSE を返します。 🎜🎜🎜🎜 🎜🎜 🎜🎜🎜🎜


实例 

<?php
$Temperature = array(666,&#39;w3cschool&#39;,&#39;666&#39;,null);
foreach ($Temperature as $key => $value) {
    
    if(is_numeric($value)){
    print("参数是数字或数字字符串<br/>");
    }else{
    print("参数不是数字或数字字符串<br/>");
    }
}
?>

--------------------------------------------------------

PHP array_column() 函数

PHP Array 函数

实例

从记录集中取出 last_name 列:

7aa58229097e66bda13dedb9481f7e1e 5698,
    'first_name' => 'Bill',
    'last_name' => 'Gates',
  ),
  array(
    'id' => 4767,
    'first_name' => 'Steve',
    'last_name' => 'Jobs',
  ),
  array(
    'id' => 3809,
    'first_name' => 'Mark',
    'last_name' => 'Zuckerberg',
  )
);

$last_names = array_column($a, 'last_name');
print_r($last_names);
?>

输出:

Array
(
  [0] => Gates
  [1] => Jobs
  [2] => Zuckerberg
)


定义和用法

array_column() 返回输入数组中某个单一列的值。

语法

array_column(array,column_key,index_key);
参数 描述
array 必需。规定要使用的多维数组(记录集)。
column_key

必需。需要返回值的列。

可以是索引数组的列的整数索引,或者是关联数组的列的字符串键值。

该参数也可以是 NULL,此时将返回整个数组(配合 index_key 参数来重置数组键的时候,非常有用)。

index_key 可选。用作返回数组的索引/键的列。


技术细节

返回值: 返回数组,此数组的值为输入数组中某个单一列的值。
 


--------------------------------------------------------
  

PHP array_search() 函数

PHP Array 函数

实例

在数组中搜索键值 "red",并返回它的键名:

a75c26f29b812b987d8e93cb78df764e"red","b"=>"green","c"=>"blue");
echo array_search("red",$a);
?>

运行实例

定义和用法

array_search() 函数在数组中搜索某个键值,并返回对应的键名。

详细说明

array_search() 函数与 in_array() 一样,在数组中查找一个键值。如果找到了该值,匹配元素的键名会被返回。如果没找到,则返回 false。

在 PHP 4.2.0 之前,函数在失败时返回 null 而不是 false。

如果第三个参数 strict 被指定为 true,则只有在数据类型和值都一致时才返回相应元素的键名。

语法

array_search(value,array,strict)
参数 描述
value 必需。规定需要搜素的键值。
array 必需。规定被搜索的数组。
strict

可选。如果该参数被设置为 TRUE,则函数在数组中搜索数据类型和值都一致的元素。可能的值:

  • true

  • false - 默认

如果设置为 true,则在数组中检查给定值的类型,数字 5 和字符串 5 是不同的(参见实例 2)。


技术细节

返回值:

如果在数组中找到指定的键值,则返回对应的键名,否则返回 FALSE。

如果在数组中找到键值超过一次,则返回第一次找到的键值所匹配的键名。

------------------------------------------------------------

PHP in_array() 函数

PHP Array 函数

实例

在数组中搜索值 "Glenn" ,并输出一些文本:

2f3c5e570bbea39caaa2164190f641d4

运行实例

定义和用法

in_array() 函数搜索数组中是否存在指定的值。

注释:如果 search 参数是字符串且 type 参数被设置为 TRUE,则搜索区分大小写。

语法

in_array(search,array,type)
参数 描述
search 必需。规定要在数组搜索的值。
array 必需。规定要搜索的数组。
type 可选。如果设置该参数为 true,则检查搜索的数据与数组的值的类型是否相同。

说明

如果给定的值 search 存在于数组 array 中则返回 true。如果第三个参数设置为 true,函数只有在元素存在于数组中且数据类型与给定值相同时才返回 true。

如果没有在数组中找到参数,函数返回 false。

注释:如果 search 参数是字符串,且 type 参数设置为 true,则搜索区分大小写。

技术细节

返回值: 如果在数组中找到值则返回 TRUE,否则返回 FALSE。


-----------------------------------------------------------------

PHP array_unique() 函数

PHP Array 函数

实例

移除数组中重复的值:

a75c26f29b812b987d8e93cb78df764e"red","b"=>"green","c"=>"red");
print_r(array_unique($a));
?>

运行实例

定义和用法

array_unique() 函数移除数组中的重复的值,并返回结果数组。

当几个数组元素的值相等时,只保留第一个元素,其他的元素被删除。

返回的数组中键名不变。

注释:被保留的数组将保持第一个数组项的键名类型。

语法

array_unique(array)
参数 描述
array 必需。规定数组。
sortingtype

可选。规定如何比较数组元素/项目。可能的值:

  • SORT_STRING - 默认。把项目作为字符串来比较。

  • SORT_REGULAR - 把每一项按常规顺序排列(Standard ASCII,不改变类型)。

  • SORT_NUMERIC - 把每一项作为数字来处理。

  • SORT_LOCALE_STRING - 把每一项作为字符串来处理,基于当前区域设置(可通过 setlocale() 进行更改)。

说明


array_unique() 先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。这并不意味着在未排序的 array 中同一个值的第一个出现的键名会被保留。

技术细节

返回值: 返回被过滤的数组。


-------------------------------------------------------------------

PHP array_merge() 函数

PHP Array 函数

实例

把两个数组合并为一个数组:

0dee88675f38520f42494b9983f23902

运行实例

定义和用法

array_merge() 函数把一个或多个数组合并为一个数组。

提示:您可以向函数输入一个或者多个数组。

注释:如果两个或更多个数组元素有相同的键名,则最后的元素会覆盖其他元素。

注释:如果您仅向 array_merge() 函数输入一个数组,且键名是整数,则该函数将返回带有整数键名的新数组,其键名以 0 开始进行重新索引(参见下面的实例 1)。

提示:该函数与 array_merge_recursive() 函数之间的不同是在处理两个或更多个数组元素有相同的键名的情况。array_merge_recursive() 不会进行键名覆盖,而是将多个相同键名的值递归组成一个数组。

语法

array_merge(array1,array2,array3...)
参数 描述
array1 必需。规定数组。
array2 可选。规定数组。
array3 可选。规定数组。


技术细节

返回值: 返回合并的数组。


---------------------------------------------------------------------------------

PHP implode() 函数

PHP String 函数

实例

把数组元素组合为字符串:

54b3667f5a66e4903417a93fbf414364

运行实例

定义和用法

implode() 函数返回由数组元素组合成的字符串。

注释:implode() 函数接受两种参数顺序。但是由于历史原因,explode() 是不行的,您必须保证 separator 参数在 string 参数之前才行。

注释:implode() 函数的 separator 参数是可选的。但是为了向后兼容,推荐您使用使用两个参数。

注释:该函数是二进制安全的。

语法

implode(separator,array)
参数 描述
separator 可选。规定数组元素之间放置的内容。默认是 ""(空字符串)。
array 必需。要组合为字符串的数组。


技术细节

返回值: 返回由数组元素组合成的字符串。


---------------------------------------------------------------------------

PHP count() 函数

PHP Array 函数

实例

返回数组中元素的数目:

d90fada51e98a8b7b9b05d403d38f7f0

运行实例

定义和用法

count() 函数返回数组中元素的数目。

语法

count(array,mode);
参数 描述
array 必需。规定数组。
mode

可选。规定模式。可能的值:

  • 0 - 默认。不对多维数组中的所有元素进行计数

  • 1 - 递归地计数数组中元素的数目(计算多维数组中的所有元素)

说明

count() 函数计算数组中的单元数目或对象中的属性个数。

对于数组,返回其元素的个数,对于其他值,返回 1。如果参数是变量而变量没有定义,则返回 0。

如果 mode 被设置为 COUNT_RECURSIVE(或 1),则会递归底计算多维数组中的数组的元素个数。

技术细节

返回值: 返回数组中元素的数目。


-------------------------------------------------------------------------

PHP strtotime() 函数

PHP Date / Time 函数

实例

将英文文本日期时间解析为 Unix 时间戳:

97fe28c84384612b0fbc12423f1f4b8f");
echo(strtotime("15 October 1980") . "0c6dc11e160d3b678d68754cc175188a");
echo(strtotime("+5 hours") . "0c6dc11e160d3b678d68754cc175188a");
echo(strtotime("+1 week") . "0c6dc11e160d3b678d68754cc175188a");
echo(strtotime("+1 week 3 days 7 hours 5 seconds") . "0c6dc11e160d3b678d68754cc175188a");
echo(strtotime("next Monday") . "0c6dc11e160d3b678d68754cc175188a");
echo(strtotime("last Sunday"));
?>

运行实例

定义和用法

strtotime() 函数将任何英文文本的日期或时间描述解析为 Unix 时间戳(自 January 1 1970 00:00:00 GMT 起的秒数)。

注意:如果年份表示使用两位数格式,则值 0-69 会映射为 2000-2069,值 70-100 会映射为 1970-2000。

注意:请注意 m/d/y 或 d-m-y 格式的日期,如果分隔符是斜线(/),则使用美洲的 m/d/y 格式。如果分隔符是横杠(-)或者点(.),则使用欧洲的 d-m-y 格式。为了避免潜在的错误,您应该尽可能使用 YYYY-MM-DD 格式或者使用 date_create_from_format() 函数。

语法

strtotime(time,now);
参数 描述
time 必需。规定日期/时间字符串。
now 可选。规定用来计算返回值的时间戳。如果省略该参数,则使用当前时间。


技术细节

返回值: 若成功则返回时间戳,失败则返回 FALSE。


----------------------------------------------------------------

PHP array_values() 函数

PHP Array 函数

实例

返回数组的所有值(非键名):

9379f121e5117f2531c2325d016c1f70"Bill","Age"=>"60","Country"=>"USA");
print_r(array_values($a));
?>

运行实例

定义和用法

array_values() 函数返回一个包含给定数组中所有键值的数组,但不保留键名。

提示:被返回的数组将使用数值键,从 0 开始并以 1 递增。

语法

array_values(array)
参数 描述
array 必需。规定数组。


技术细节

返回值: 返回包含数组中所有的值的数组。


-------------------------------------------------------
import方法是ThinkPHP框架用于类库导入的封装实现,尤其对于项目类库、扩展类库和第三方类库的导入支持,import方法早期的版本可以和java的import方法一样导入目录和通配符导入,后来考虑到性能问题,在后续的版本更新中不断改进和简化了,所以现在的用法比较简单明了。调用格式:
import('类库名', '起始路径', '类库后缀')
imprt方法有一个别名vendor方法,专门用于导入第三方类库,区别在于起始路径和类库后缀默认值不同。
我们来分析下具体的用法:
导入系统基类库

系统基类库其实就是指的Think类库包,所在目录就是指框架的核心Lib目录,import方法可以用于导入系统基类库,例如:

    import('Think.Util.Array');

复制代码
表示导入系统目录下面的Lib/Util/Array.class.php 类库文件,相当于我们这样使用

 require THINK_PATH.&#39;Lib/Util/Array.class.php&#39;;

复制代码
可以支持多级目录,例如:

    import(&#39;Think.Util.U1.ClassA&#39;);

复制代码

import(&#39;Think.Util.U1.A2.ClassB&#39;);

复制代码
通过import方法导入类库后,就可以进行类库的实例化操作了。
导入扩展类库
扩展类库位于Extend/Library目录下面,这是系统的公共扩展类库目录,目前支持的扩展类库包只有ORG和Com包。

  import(&#39;ORG.Util.Image&#39;);
    import(&#39;Com.Sina.OAuth&#39;);

复制代码

会导入扩展目录下面的第三方类库(分别是Extend/Library/ORG/Util/Image.class.php和Extend/Library/Com/Sina/OAuth.class.php 类库文件),第三方类库包只能支持ORG和Com两种,下面的子目录可以随意添加。
导入项目应用类库
如果没有指定起始导入路径的话,类库包Think、ORG、Com之外的都会被认为是导入项目应用类库,例如:

import("MyApp.Action.UserAction");
    import("MyApp.Model.InfoModel");

复制代码
表示导入MyApp项目的UserAction和InfoModel类库文件,由于通常,我们都是导入当前项目下面的类库,所以可以简写成:

import("@.Action.UserAction");
    import("@.Model.InfoModel");

复制代码
@符号表示导入当前项目下面的类库,这种方式也一定程度上方便了项目类库的代码移植,如果项目名称改变或者移动到其它项目下面的时候,写法不需要改变。
导入非标准类库文件

这里所说的非标准类库文件,主要是指位于特殊位置或者非.class.php后缀的类库文件。像导入基类库、扩展类库和项目类库都是基于框架规范的目录下面,如果我们需要导入项目的Common目录下面的MyClass.php文件,则可以采用:

  import(&#39;Common.MyClass&#39;,APP_PATH,&#39;.php&#39;);

复制代码
或者

  import(&#39;MyClass&#39;,APP_PATH.&#39;Common&#39;,&#39;.php&#39;);

复制代码
或者要导入当前目录下面的RBAC类库

 import("RBAC.AccessDecisionManager",dirname(__FILE__),".php");

复制代码
还有一种特殊情况,是类库命名的特殊性。按照系统的规则,import方法是无法导入具有点号的类库文件的,因为点号会直接转化成斜线,例如我们定义了一个名称为User.Info.class.php 的文件的话,采用:

 import("ORG.User.Info");

复制代码
方式加载的话就会出现错误,导致加载的文件不是ORG/User.Info.class.php 文件,而是ORG/User/Info.class.php 文件,这种情况下,我们可以使用:

import("ORG.User#Info");

复制代码
来导入。
第三方类库导入
ThinkPHP 的基类库都是以.class.php 为后缀的,这是系统内置的一个约定,当然也可以通过 import 的参数来控制, 为了更加方便引入其他框架和系统的类库, 系统还提供了一个import方法的别名vendor,专门用于导入第三方类库,并且默认的起始目录和类文件后缀有区别。第三方类库位于系统扩展目录下的Vendor 目录, 例如,我们把 Zend 的 Filter\Dir.php 放到 Vendor 目录下面,这个时候 Dir 文件的路径就是 Vendor\Zend\Filter\Dir.php,我们使用vendor 方法导入只需要使用:

 Vendor(&#39;Zend.Filter.Dir&#39;);

复制代码

就可以导入Dir类库了。
Vendor方法也可以支持和import方法一样的基础路径和文件名后缀参数,例如:

Vendor(&#39;Zend.Filter.Dir&#39;,dirname(__FILE__),&#39;.class.php&#39;);

复制代码
别名导入
除了命名空间的导入方式外,import方法还可以支持别名导入,要使用别名导入,首先要定义别名,我们可以在项目配置目录下面增加alias.php 用以定义项目中需要用到的类库别名,例如:

   return array(
    &#39;rbac&#39; =>LIB_PATH.&#39;Common/Rbac.class.php&#39;,
    &#39;page&#39; =>LIB_PATH.&#39;Common/Page.class.php&#39;,
    );

复制代码
那么,现在就可以直接使用:

    import("rbac");
    import("page");

复制代码
导入Rbac和Page类,别名导入方式禁止使用import方法的第二和第三个参数,别名导入方式的效率比命名空间导入方式要高效,缺点是需要预先定义相关别名。
可以为某些需要的类库定义别名,那么无需定义自动加载路径也可以快速的自动加载。
一般情况下,由于框架内部采用了自动加载方式,所以大多数情况下面不需要用户手动导入类库文件,通常用于导入扩展类库和第三方类库的情况居多。而且配合别名定义和自动加载路径的定义,也能减少用户手动导入类库的情况。
------------------------------------------------------------------
is_numcomma()检测变量是否是数字或逗号。
------------------------------------------------------------------

PHP join() 函数

PHP String 函数

实例

把数组元素组合为一个字符串:

63221d4383c13cc0e471d4c0629cfe4a

运行实例

定义和用法

join() 函数返回由数组元素组合成的字符串。

join() 函数是 implode() 函数的别名。

注释:join() 函数接受两种参数顺序。但是由于历史原因,explode() 是不行的,您必须保证 separator 参数在 string 参数之前才行。

注释:join() 函数的 separator 参数是可选的。但是为了向后兼容,推荐您使用使用两个参数。

语法

join(separator,array)
参数 描述
separator 可选。规定数组元素之间放置的内容。默认是 ""(空字符串)。
array 必需。要组合为字符串的数组。


技术细节

返回值: 返回由数组元素组合成的字符串。


--------------------------------------------------------------------

PHP explode() 函数

PHP String 函数

实例

把字符串打散为数组:

317e97e6c3e994a4ad906485c1622bfb

运行实例

定义和用法

explode() 函数把字符串打散为数组。

注释:"separator" 参数不能是空字符串。

注释:该函数是二进制安全的。

语法

explode(separator,string,limit)
参数 描述
separator 必需。规定在哪里分割字符串。
string 必需。要分割的字符串。
limit

可选。规定所返回的数组元素的数目。

可能的值:

  • 大于 0 - 返回包含最多 limit 个元素的数组

  • 小于 0 - 返回包含除了最后的 -limit 个元素以外的所有元素的数组

  • 0 - 返回包含一个元素的数组


技术细节

返回值: 返回字符串的数组
PHP 版本: 4+
更新日志: 在 PHP 4.0.1 中,新增了 limit 参数。在 PHP 5.1.0 中,新增了对负数 limit 的支持。


实例

使用 limit 参数来返回一些数组元素:

c50ec8cdfe1adc1cbdc5183941e5876c


------------------------------------------------------------------


ini_set

(PHP 4,PHP 5,PHP 7)

ini_set—设置一个配置选项的值

描述

字符串 ini_set字符串 varname美元字符串 美元的价值

设置一个配置选项的值。配置选项 将脚本的执行过程中保持这种新的价值,并将恢复 在剧本的结尾。

参数

  • 变量名

  • 不是所有可用的选项可以使用ini_set()。有一个列表中的所有可用的选项 在附录。

  • 新的价值

  • 对于期权的新价值。

返回值

如果成功返回旧值,错误的对失效。

实例

 


1例# INI选项设置

<?PHP
回声ini_get(“display_errors”);

如果(!ini_get(“display_errors”)){
    ini_set(“display_errors”,“1”);
}

回声ini_get(“display_errors”);
?>

参见

  • get_cfg_var()-获取一个PHP配置选项的值

  • ini_get()-获取配置选项的值

  • ini_get_all()-获取所有配置选项

  • ini_restore()恢复一个配置选项的值

  • 構成設定を変更する方法



-------------------------------------- ---- ----------------------------------

PHP 日付/時刻関数

  • PHPカレンダー

  • PHP ディレクトリ

PHP の日付/時刻の概要


Date/Time 関数を使用すると、PHP スクリプトが実行されているサーバーから日付と時刻を取得できます。日付/時刻関数を使用すると、日付と時刻をさまざまな方法で書式設定できます。

注: これらの機能はサーバーのローカル設定に依存します。これらの機能を使用するときは、夏時間と閏年を忘れずに考慮してください。

インストール

PHP 日付/時刻関数は、PHP コアの不可欠な部分です。これらの機能を使用するためにインストールは必要ありません。

実行時設定

日付/時刻関数の動作は、php.ini の設定によって影響されます:

名前 説明 デフォルト PHPバージョン
date.timezone デフォルトタイムゾーン (すべての日付/時刻関数はこのオプションを使用します) "" PHP 5.1
date.default_latitude デフォルトの緯度 (date_sunrise() と date_sunset() はこのオプションを使用します) "31.7667" PHP 5.0
date.default_longitude デフォルトの経度 (date_sunrise() と date_sunset() はこのオプションを使用します) "35.2333" PHP 5.0
date.sunrise_zenith デフォルトの日の出天頂 (date_s unrise( ) と date_sunset() はこのオプションを使用します) "90.83" PHP 5.0
date.sunset_zenith デフォルトの日没天頂 (date_sunrise() と date_sunset() はこのオプションを使用します) "90.83" PHP 5 .0


PHP 5 日付/時刻関数

関数 説明
checkdate() グレゴリオ暦の日付を確認します。
date_add() 日付に日、月、年、時、分、秒を追加します。
date_create_from_format() 指定された形式に従ってフォーマットされた新しい DateTime オブジェクトを返します。
date_create() 新しい DateTime オブジェクトを返します。
date_date_set() 新しい日付を設定します。
date_default_timezone_get() すべての日付/時刻関数で使用されるデフォルトのタイムゾーンを返します。
date_default_timezone_set() すべての日付/時刻関数で使用されるデフォルトのタイムゾーンを設定します。
date_diff() 2 つの日付の差を返します。
date_format() 指定された形式に従ってフォーマットされた日付を返します。
date_get_last_errors() 警告/エラーを日付文字列で返します。
date_interval_create_from_date_string() 文字列の関連部分から DateInterval を作成します。
date_interval_format() 時間間隔をフォーマットします。
date_isodate_set() ISO 日付を設定します。
date_modify() タイムスタンプを変更します。
date_offset_get() タイムゾーンオフセットを返します。
date_parse_from_format() 指定された形式に従って、指定された日付に関する詳細情報を含む連想配列を返します。
date_parse() 指定された日付に関する詳細情報を含む連想配列を返します。
date_sub() 指定した日付から日、月、年、時、分、秒を減算します。
date_sun_info() 指定された日付と場所の日の出/日の入りと夕暮れの開始/夕暮れの終了に関する情報を含む配列を返します。
date_sunrise() 指定された日付と場所の日の出時刻を返します。
date_sunset() 指定された日付と場所の日没時刻を返します。
date_time_set() 時間を設定します。
date_timestamp_get() Unix タイムスタンプを返します。
date_timestamp_set() Unix タイムスタンプに基づいて日付と時刻を設定します。
date_timezone_get() 指定された DateTime オブジェクトのタイムゾーンを返します。
date_timezone_set() DateTime オブジェクトのタイムゾーンを設定します。
date() ローカルの日付と時刻をフォーマットします。
getdate() タイムスタンプの日付/時刻情報、または現在のローカル日付/時刻を返します。
gettimeofday() は現在時刻を返します。
gmdate() GMT/UTCの日付と時刻をフォーマットします。
gmmktime() GMT 日付の UNIX タイムスタンプを返します。
gmstrftime() ロケール設定に従ってGMT/UTCの日付と時刻をフォーマットします。
idate() 現地時間/日付を整数にフォーマットします。
localtime() 現地時間を返します。
microtime() 現在の時刻のマイクロ秒数を返します。
mktime() 日付の Unix タイムスタンプを返します。
strftime() ロケール設定に従って現地時間/日付をフォーマットします。
strptime() strftime() によって生成された時刻/日付を解析します。
strtotime() 英語のテキストの日付または時刻の説明を Unix タイムスタンプに解析します。
time() 現在の時刻の Unix タイムスタンプを返します。
timezone_abbreviations_list() 夏時間、オフセット、タイムゾーン名を含む連想配列を返します。
timezone_identifiers_list() すべてのタイムゾーン識別子を含むインデックス付き配列を返します。
timezone_location_get() 指定されたタイムゾーンの位置情報を返します。
timezone_name_from_abbr() タイムゾーンの略語に基づいてタイムゾーン名を返します。
timezone_name_get() タイムゾーンの名前を返します。
timezone_offset_get() GMT を基準としたタイムゾーン オフセットを返します。
timezone_open() 新しい DateTimeZone オブジェクトを作成します。
timezone_transitions_get() タイムゾーンのすべての遷移を返します。
timezone_version_get() タイムゾーンデータベースのバージョンを返します。


PHP 5 つの事前定義された日付/時刻定数

DATE_RSSRSS (Sun, 14 Aug 2005 16:13:03 UTC) DATE_W3Cワールドワイドウェブコンソーシアム (例: 2005-08-14T16:13:03+0000)



フォーマット文字列は、以下のフォーマットパラメータ文字列フォーマット文字を認識できます。 説明 戻り値の例
Day --- -----
d 日付、先頭にゼロを含む 2 桁 01 ~ 31
D 週 曜日月、テキスト表現、3 文字 Mon to Sun
j 月の日、先行ゼロなし 1 to 31
l (「L」の小文字) 曜日、完全なテキスト形式 Sunday to Saturday
N ISO-8601 形式の数字で表される曜日 (PHP 5.1.0 で新たに追加) 1 (月曜日を示す) ~ 7 (日曜日を示す)
S 各月の日数の後の英語の接尾辞、2 文字の st、 nd、rd、または th。 j と組み合わせて使用​​できます
w 曜日、数字は 0 (日曜日を示す) ~ 6 (土曜日を示す) を表します
z 年間の曜日 0 ~ 365
week --- ---
W ISO- 8601 形式 年の週、各週は月曜日から始まります (PHP 4.1.0 で新しく追加されました) 例: 42 (年の第 42 週)
month --- ---
F 月、完全なテキスト形式、 1 月や 3 月など 1 月から 12 月まで
m 先頭にゼロを付けた数字で表した月 01 から 12
M 3 文字の略語で表した月 1 月から 12 月まで
n 先頭のゼロを付けずに数字で表した月 1 から 12
t月の日数は28から31まで
年 --- ---
L 閏年かどうか 閏年の場合は1、それ以外の場合は0
o ISO- 8601 形式の年番号。これは Y と同じ値ですが、ISO 週番号 (W) が前年または翌年に属している場合は、その年が使用されます。 (PHP 5.1.0 で新規追加) 例: 1999 または 2003
Y 4 桁の完全な年表現 例: 1999 または 2003
y 2 桁の年表現 例: 99 または 03
時刻 --- ---
a 小文字の AM および PM 値 AM または pm
A 大文字の AM または PM 値 AM または PM
B スウォッチ インターネット標準時間 000 ~ 999
g 時、12 時間形式、先頭のゼロなし 1 ~ 12
G 時、24 時間形式、先頭のゼロなし 0 ~ 23
h 時間、12 時間形式、先頭のゼロ付き 01 ~ 12
H 時間、24 時間形式、先頭の 0 付き 00 ~ 23
i 分、先頭の 00 から 00 ~ 59>
s 秒 (先頭にゼロが付きます) 00 から 59>
u ミリ秒 (PHP 5.2.2 の新機能)。 date() 関数は整数パラメータのみを受け入れ、DateTime::format() はミリ秒のみをサポートするため、常に 000000 を返すことに注意してください。 例: 654321
タイムゾーン --- ---
e タイムゾーン識別子 (PHP 5.1.0 の新機能) 例: UTC、GMT、大西洋/アゾレス諸島
I 夏時間かどうか 夏時間の場合、 1 です。そうでない場合は 0
O グリニッジ標準時との時間の差 例: +0200
P 時と分をコロンで区切ったグリニッジ標準時 (GMT) との差 (PHP 5.1.3 の新機能)例: +02:00
T このマシンが設置されているタイムゾーン 例: EST、MDT ([翻訳者注] 「東部標準時」など、Windows の完全なテキスト形式では、中国語版では「中国」と表示されます標準時")。
Z 時差オフセットの秒数。 UTC より西のタイム ゾーン オフセットは常に負であり、UTC より東のタイム ゾーン オフセットは常に正です。 -43200 ~ 43200
完全な日付/時刻 --- ---
c ISO 8601 形式の日付 (PHP 5 の新機能) 2004-02-12T15:19:21+00:00
r     RFC 822 格式的日期     例如:Thu, 21 Dec 2000 16:01:07 +0200
U     从 Unix 纪元(January 1 1970 00:00:00 GMT)开始至今的秒数     参见 time()
-------------------------------------------------------------------------

preg_last_error

(PHP 5 >= 5.2.0, PHP 7)

preg_last_error — 返回最后一个PCRE正则执行产生的错误代码

说明

int preg_last_error ( void )

返回最后一次PCRE正则执行的错误代码。

Example #1 preg_last_error() 示例

<?php

preg_match(&#39;/(?:\D+|<\d+>)*[!?]/&#39;, &#39;foobar foobar foobar&#39;);

if (preg_last_error() == PREG_BACKTRACK_LIMIT_ERROR) {
    print &#39;Backtrack limit was exhausted!&#39;;
}

?>

以上例程会输出:

Backtrack limit was exhausted!

返回值

返回下面常量中的一个(查看它们自身的解释):

  • PREG_NO_ERROR

  • PREG_INTERNAL_ERROR

  • PREG_BACKTRACK_LIMIT_ERROR (参见 pcre.backtrack_limit)

  • PREG_RECURSION_LIMIT_ERROR (参见 pcre.recursion_limit)

  • PREG_BAD_UTF8_ERROR

  • PREG_BAD_UTF8_OFFSET_ERROR (自 PHP 5.3.0 起)

  • PREG_JIT_STACKLIMIT_ERROR (自 PHP 7.0.0 起)

----------------------------------------------------------------------------------------------------

array_diff() 函数返回两个数组的差集数组。该数组包括了所有在被比较的数组中,但是不在任何其他参数数组中的键值。

在返回的数组中,键名保持不变。

语法

array_diff(array1,array2,array3...);
Constant Description
DATE_ATOM Atom (例: 2005-08-15T16:13:03+0000)
DATE_COOKIE HTTP Cookie (例: Sun, 14 Aug 2005 16:13:03 UTC)
DATE_ISO8601 ISO-8601 (例: 2005-08-14T16:13:03+0000)
DATE_R FC822 RFC 822 (例: Sun, 14 Aug 2005 16:13:03 UTC)
DATE_RFC850 RFC 850 (例: Sunday, 14-Aug-05 16:13:03 UTC)
DATE_ RFC1036 RFC 1036 (例: 2005 年 8 月 14 日日曜日 16:13:03 UTC)
DATE_RFC1123 RFC 1123 (例: 2005 年 8 月 14 日日曜日 16:13:03 UTC)
D ATE_RFC2822 RFC 2822 (Sun, 14 Aug 2005 16:13:03 +0000)
参数 描述
array1 必需。与其他数组进行比较的第一个数组。
array2 必需。与第一个数组进行比较的数组。
array3,... 可选。与第一个数组进行比较的其他数组。


提示和注释

提示:可用一个或任意多个数组与第一个数组进行比较。

注释:仅有值用于比较。

技术细节

返回值:

返回差集数组,该数组包括了所有在被比较的数组(array1)中,但是不在任何其他参数数组(array2 或 array3 等等)中的键值。

------------------------------------------------- --------------------------------------------------

json_decode

(PHP 5 > ; = 5.2.0, PHP 7, PECL JSON > = 1.2.0)

json_decode — JSON 文字列

説明

混合 json_decode (string JSON USD[, Boolean USD について=JSON美元【,布尔 有关美元=错误的【,int 为深度= 512【,int $选项= 0] ] ])

以一个JSON编码的字符串转换为一个PHP变量。

参数

  • JSON

  • 这个JSON 字符串解码。

    此功能只适用于UTF-8编码的字符串。

    8666b00a5395b2e649547d548fed81b2注128dba7a3a77be0113eb0bea6ea0a5d0:

  • 协会

  • 什么时候真的,返回目标将被转换成 联想阵列S.

  • 深度

  • 用户指定的递归深度。

  • 选项

  • Bitmask的JSON解码选项。目前有两支 选项。第一个是json_bigint_as_string这 允许铸造大整数的字符串而不是漂浮,这是 默认。第二选项json_object_as_array具有相同的效果作为背景协会真的

返回值

返回的值编码JSON在适当的 PHP类型。价值观真正的无效的返回真的错误的无效的分别。无效的返回如果JSON間違っています

【, int は深さ= 512【, int $options= 0] ])


JSON でエンコードされた文字列を PHP 変数に変換します。

🎜パラメータ🎜
  • 🎜JSON code>🎜
  • 🎜この JSON 文字列のデコード。 🎜🎜この機能は、UTF-8 でエンコードされた文字列でのみ機能します。 🎜
    🎜82e1f27b15ccd58568f7e2808f5fbb4c注128dba7a3a77be0113eb0bea6ea0a5d0: 🎜
  • 🎜関連付け🎜
  • 🎜いつ🎜True🎜、返されるターゲットは連想配列 S に変換されます。🎜
  • 🎜オプション🎜
  • 🎜ビットマスクの JSON デコード オプション。現在、2 つのオプションがあります。 1 つ目は 🎜json_bigint_as_string です。これにより、デフォルトの浮動小数点数の代わりに大きな整数の文字列をキャストできます。 2 番目のオプション 🎜json_object_as_array🎜 は、背景関連付けと同じ効果があります。 code >🎜本当に🎜。 🎜

戻り値🎜

戻り値のエンコーディング JSON は適切ですPHPの種類。 🎜 true 🎜、🎜 false 🎜、🎜 valid 🎜 の値は、🎜true🎜、🎜間違っています🎜と🎜無効🎜です。 🎜無効🎜JSON をデコードまたはエンコードできない場合に返されますデータが再帰制限より深い。 🎜🎜🎜🎜

 

---------------------------------------------------------


addslashes() 函数返回在预定义字符之前添加反斜杠的字符串。

预定义字符是:

  • 单引号(')

  • 双引号(")

  • 反斜杠(\)

  • NULL

提示:该函数可用于为存储在数据库中的字符串以及数据库查询语句准备字符串。

注释:默认地,PHP 对所有的 GET、POST 和 COOKIE 数据自动运行 addslashes()。所以您不应对已转义过的字符串使用 addslashes(),因为这样会导致双层转义。遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测。


语法

addslashes(string)
参数描述string必需。规定要转义的字符串。


技术细节

返回值:返回已转义的字符串。  ------------------------------------------------------------------------------------stripslashes() 函数删除由 addslashes() 函数添加的反斜杠。提示:该函数可用于清理从数据库中或者从 HTML 表单中取回的数据。语法stripslashes(string)参数描述string必需。规定要检查的字符串。技术细节返回值:返回已剥离反斜杠的字符串。 

関連する推奨事項:

PHP 共通関数のカプセル化

以上がPHP共通関数集の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。