call_user_func函数的注意事项

 更新时间:2016年11月25日 16:48  点击:1847

call_user_func函数的注意事项

parse error: syntax error, unexpected t_list, expecting t_string in

今天在使用这个函数的时候一直提示上述问题。参看官方的手册也没有介绍使用其的注意事项。

附:
mixed call_user_func ( callback $function [, mixed $parameter [, mixed $... ]] )
可以传递任何内置的或者用户自定义的函数,除了语言结构如array(),echo(),empty(),eval(),exit(),isset(),list(),print() 和 unset()。

本人的问题就是在对象中存在一个叫list的方法名。故其和php教程的语言结构list()起冲突了。

看实例应用

call_user_func函数类似于一种特别的调用函数的方法,使用方法如下:    
function  a($b,$c)    
{  
echo  $b;  
echo  $c;  
}  
call_user_func('a',  "111","222");  
call_user_func('a',  "333","444");  
//显示  111  222  333  444  
?>

  

调用类内部的方法比较奇怪,居然用的是array,不知道开发者是如何考虑的,当然省去了new,也是满有新意的:  
class  a  {  
function  b($c)    
{  
echo  $c;  
}  
}  
call_user_func(array("a",  "b"),"111");  
//显示  111  
?>

  

call_user_func_array函数和call_user_func很相似,只不过是换了一种方式传递了参数,让参数的结构更清晰:  
function  a($b,  $c)    
{  
echo  $b;  
echo  $c;

  

}  
call_user_func_array('a',  array("111",  "222"));  
//显示  111  222  
?>

 

一般最简单就是字符替换了

如:str_replace("#", "-", "dizaz#7#final"),

更高级的就是保存数据替换了。

str_replace(array('#', '$'), "-", "dizaz#7$final") 等,就这些调用方式,

其它这些方法在php教程中最非常简单的,还有就是数组替换数据

str_repace( array(1,2,3,4,5),'',array(6,7,8,9,10));

这就是替换函数哦。

$object = "dizaz#7#final";
$res = str_replace("#", "-", $object);
echo $res;

$_files["file"]["name"] - 被上传文件的名称
$_files["file"]["type"] - 被上传文件的类型
$_files["file"]["size"] - 被上传文件的大小,以字节计
$_files["file"]["tmp_name"] - 存储在服务器的文件的临时副本的名称
$_files["file"]["error"] - 由文件上传导致的错误代码

 

<html>
<body>

<form action="upload_file.php教程" method="post"
enctype="multipart/form-data">
<label for="file">filename:</label>
<input type="file" name="file" id="file" />
<br />
<input type="submit" name="submit" value="submit" />
</form>

</body>
</html>

php代码

<?php

if ((($_files["file"]["type"] == "image/gif")
|| ($_files["file"]["type"] == "image/jpeg")
|| ($_files["file"]["type"] == "image/pjpeg"))
&& ($_files["file"]["size"] < 20000))
  {
  if ($_files["file"]["error"] > 0)
    {
    echo "error: " . $_files["file"]["error"] . "<br />";
    }
  else
    {
    echo "upload: " . $_files["file"]["name"] . "<br />";
    echo "type: " . $_files["file"]["type"] . "<br />";
    echo "size: " . ($_files["file"]["size"] / 1024) . " kb<br />";
    echo "stored in: " . $_files["file"]["tmp_name"];
    }
  }
else
  {
  echo "invalid file";
  }

?>

$_files数组内容如下:
$_files['myfile']['name'] 客户端文件的原名称。
$_files['myfile']['type'] 文件的 mime 类型,需要浏览器提供该信息的支持,例如"image/gif"。
$_files['myfile']['size'] 已上传文件的大小,单位为字节。
$_files['myfile']['tmp_name'] 文件被上传后在服务端储存的临时文件名,一般是系统默认。可以在php.ini的upload_tmp_dir 指定,但 用 putenv() 函数设置是不起作用的。
$_files['myfile']['error'] 和该文件上传相关的错误代码。['error'] 是在 php 4.2.0 版本中增加的。下面是它的说明:(它们在php3.0以后成了常量)
upload_err_ok
值:0; 没有错误发生,文件上传成功。
upload_err_ini_size
值:1; 上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值。
upload_err_form_size
值:2; 上传文件的大小超过了 html 表单中 max_file_size 选项指定的值。
upload_err_partial
值:3; 文件只有部分被上传。
upload_err_no_file
值:4; 没有文件被上传。
值:5; 上传文件大小为0.

php教程 mt_rand()随机数函数
mt_rand() 使用 mersenne twister 算法返回随机整数。

语法
mt_rand(min,max)说明
如果没有提供可选参数 min 和 max,mt_rand() 返回 0 到 rand_max 之间的伪随机数。例如想要 5 到 15(包括 5 和 15)之间的随机数,用 mt_rand(5, 15)。

在 3.0.7 之前的版本中,max 的含义是 range 。要在这些版本中得到和上例相同 5 到 15 的随机数,简短的例子是 mt_rand (5, 11)。
*/

 $rand = mt_rand(0,1);
 if( $rand==0 )
 {
  $array = array(41,20,26,29,30);
 }
 elseif( $rand==1 )
 {
  $array = array(38,42,37,400,444);
 }

 foreach( $array as $v => $vv )
 {
  
  echo "$vvn";
 }

不断阅读,你就会发现一些新内容!

表a

函数

说明

实例

filesize

($file)

此函数以字节为单位返回一个文件的大小。它用于计算一个文件在磁盘上占有多少空间。

<?php教程
// get file size in bytes
echo "size is " . filesize('myfile.html') . " bytes";
?>

fileowner

($file)

filegroup

($file)

这些函数返回一个文件的所有者和组id,用于找出谁“拥有”某一特定的文件。

<?php
// get file owner and group
echo "uid: " . fileowner('myfile.html');
echo "gid: " . filegroup('myfile.html');
?>

fileatime

($file)

filemtime

($file)

这些函数分别返回某一文件最后被访问及修改的时间,用于找出一个文件在一个特定的日期后是否被修改。

<?php
// get file access/modification times
echo "last accessed on: " . date("d-m-y", fileatime('myfile.html'));
 
echo "last modified on: " . date("d-m-y", filemtime('myfile.html'));
?>

fileperms

($file)

此函数返回一个文件许可,用它来检查文件是否可读,可写或可执行。

<?php
// get permissions in octal format
echo "file permissions: " . sprintf('%0', fileperms('myfile.html'));
?>

filetype

($file)

此函数返回文件的“类型”—是否连接,目录,特性或块设备,或常规文件。在执行某项操作前,用它来检验文件的本质。

<?php
// get file type
echo "file type: " . filetype('myfile.html');
?>

stat($file)

这是一个“包罗万象”的函数,它返回一个文件的详细统计资料,包括它的所有者与所属组,大小,最后修改时间,索引节点数目。如果你需要在一个单独的函数调用中获得全面的文件统计资料,请使用此函数而不是前面列举的那些函数。

<?php
// get file statistics
print_r(stat('myfile.html'));
?>

realpath

($file)

此函数将一个相对文件路径转换为绝对文件路径,当需要找出一个文件在磁盘上的准确位置,则使用此函数。

<?php
// get absolute path
// returns "/tmp/myfile.html"
echo "file path: " . realpath("./cook/book/http://www.cnblogs.com/myfile.html");
?>

basename

($file)

dirname

($file)

只要给定一个完整的文件路径,这些函数就能将其分解为各个组成部分,并分别返回文件名和目录。

<?php
// split directory and file names
// returns "/usr/local/bin"
echo "directory: " . dirname("/usr/local/bin/php");
 
// returns "php"
echo "file: " . basename("/usr/local/bin/php");
?>

file($file)

此函数将一文件的内容读入一数组。数组中的每一个元素代表一行文件。此函数用于将文件内容读入一个变量中,以便对它进行进一步的加工。

<?php
// read file contents
$lines = file('myfile.html');
 
// print line by line
for($x=1; $x<=sizeof($lines); $x++) {
?echo "line $x: " . $lines[$x-1] . "n";
}
?>

[!--infotagslink--]

相关文章

  • php正确禁用eval函数与误区介绍

    eval函数在php中是一个函数并不是系统组件函数,我们在php.ini中的disable_functions是无法禁止它的,因这他不是一个php_function哦。 eval()针对php安全来说具有很...2016-11-25
  • php中eval()函数操作数组的方法

    在php中eval是一个函数并且不能直接禁用了,但eval函数又相当的危险了经常会出现一些问题了,今天我们就一起来看看eval函数对数组的操作 例子, <?php $data="array...2016-11-25
  • Python astype(np.float)函数使用方法解析

    这篇文章主要介绍了Python astype(np.float)函数使用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-06-08
  • Python中的imread()函数用法说明

    这篇文章主要介绍了Python中的imread()函数用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-16
  • C# 中如何取绝对值函数

    本文主要介绍了C# 中取绝对值的函数。具有很好的参考价值。下面跟着小编一起来看下吧...2020-06-25
  • C#学习笔记- 随机函数Random()的用法详解

    下面小编就为大家带来一篇C#学习笔记- 随机函数Random()的用法详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25
  • 金额阿拉伯数字转换为中文的自定义函数

    CREATE FUNCTION ChangeBigSmall (@ChangeMoney money) RETURNS VarChar(100) AS BEGIN Declare @String1 char(20) Declare @String2 char...2016-11-25
  • Android开发中findViewById()函数用法与简化

    findViewById方法在android开发中是获取页面控件的值了,有没有发现我们一个页面控件多了会反复研究写findViewById呢,下面我们一起来看它的简化方法。 Android中Fin...2016-09-20
  • C++中 Sort函数详细解析

    这篇文章主要介绍了C++中Sort函数详细解析,sort函数是algorithm库下的一个函数,sort函数是不稳定的,即大小相同的元素在排序后相对顺序可能发生改变...2022-08-18
  • PHP用strstr()函数阻止垃圾评论(通过判断a标记)

    strstr() 函数搜索一个字符串在另一个字符串中的第一次出现。该函数返回字符串的其余部分(从匹配点)。如果未找到所搜索的字符串,则返回 false。语法:strstr(string,search)参数string,必需。规定被搜索的字符串。 参数sea...2013-10-04
  • PHP函数分享之curl方式取得数据、模拟登陆、POST数据

    废话不多说直接上代码复制代码 代码如下:/********************** curl 系列 ***********************///直接通过curl方式取得数据(包含POST、HEADER等)/* * $url: 如果非数组,则为http;如是数组,则为https * $header:...2014-06-07
  • php中的foreach函数的2种用法

    Foreach 函数(PHP4/PHP5)foreach 语法结构提供了遍历数组的简单方式。foreach 仅能够应用于数组和对象,如果尝试应用于其他数据类型的变量,或者未初始化的变量将发出错误信息。...2013-09-28
  • C语言中free函数的使用详解

    free函数是释放之前某一次malloc函数申请的空间,而且只是释放空间,并不改变指针的值。下面我们就来详细探讨下...2020-04-25
  • 总结android studio注意事项及打不开等问题解决方法

    经过一段时间的使用,总结了android studio打不开等问题的6种解决方法及android studio注意事项,希望对大家有所帮助。 1 首次运行,建立好项目需要下载一些东西,如果...2016-09-20
  • PHP函数strip_tags的一个bug浅析

    PHP 函数 strip_tags 提供了从字符串中去除 HTML 和 PHP 标记的功能,该函数尝试返回给定的字符串 str 去除空字符、HTML 和 PHP 标记后的结果。由于 strip_tags() 无法实际验证 HTML,不完整或者破损标签将导致更多的数...2014-05-31
  • SQL Server中row_number函数的常见用法示例详解

    这篇文章主要给大家介绍了关于SQL Server中row_number函数的常见用法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-12-08
  • PHP加密解密函数详解

    分享一个PHP加密解密的函数,此函数实现了对部分变量值的加密的功能。 加密代码如下: /* *功能:对字符串进行加密处理 *参数一:需要加密的内容 *参数二:密钥 */ function passport_encrypt($str,$key){ //加密函数 srand(...2015-10-30
  • php的mail函数发送UTF-8编码中文邮件时标题乱码的解决办法

    最近遇到一个问题,就是在使用php的mail函数发送utf-8编码的中文邮件时标题出现乱码现象,而邮件正文却是正确的。最初以为是页面编码的问题,发现页面编码utf-8没有问题啊,找了半天原因,最后找到了问题所在。 1.使用 PEAR 的...2015-10-21
  • C#中加载dll并调用其函数的实现方法

    下面小编就为大家带来一篇C#中加载dll并调用其函数的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25
  • C#虚函数用法实例分析

    这篇文章主要介绍了C#虚函数用法,实例分析了C#中虚函数的功能与基本使用技巧,需要的朋友可以参考下...2020-06-25