文件重命名rename函数用法

 更新时间:2016年11月25日 15:09  点击:1540

文件重命名rename函数用法

有图片img_1.jpg,img_2.jpg,img_3.jpg....要分别放到文件夹img_1,文件夹img_2,文件夹img_3,同时把文件名都改为large.jpg。

<?php教程
$s=explode("n",trim(`dir/b E:11-2caps教程`));//获取该路径下所有文件名
//print_r($s);
foreach($s as $rs)
{
    $name=explode(".",$rs);
   $file_name=$name[0];//获取要创建的文件夹名字
    mkdir("E:/11-2/caps/$file_name");//创建文件夹
    rename('E:/11-2/caps/'.$rs,"E:/11-2/caps/$file_name/large.jpg");//移动并重命名文件
}
?>

定义和用法
rename() 函数重命名文件或目录。
若成功,则该函数返回 true。若失败,则返回 false。
语法
rename(oldname,newname,context)
参数 描述
oldname 必需。规定要重命名的文件或目录。
newname 必需。规定文件或目录的新名称。
context 必需。规定文件句柄的环境。Context 是可修改流的行为的一套选项。
提示和注释
注释:在 PHP 4.3.3 之前,rename() 不能在基于 *nix 的系统中跨磁盘分区重命名文件。
注释:用于 oldname 中的封装协议必须和用于 newname 中的相匹配。
注释:对 context 的支持是 PHP 5.0.0 添加的。
例子

<?php
rename("images","pictures");
?>

<?php
$file = "html/cache.txt";
$rename = "html/rename.txt";
if(rename($file,$rename)){
echo "更名成功";
}else{
echo "更名失败";
}
rename("html/cache2","html/cache3.txt");
rename("html","cache");
rename("file","html/files");
?>

这是一篇基础的php教程入门教程,我们要告诉你如何利用php的相关函数来获取表单数据,在php提供了post,get,request三种方法来获取数据,我们最常用的就是$_POST,$_GET方法了,看
$_REQUEST 变量
PHP 的 $_REQUEST 变量包含了 $_GET, $_POST 以及 $_COOKIE 的内容。

PHP 的 $_REQUEST 变量可用来取得通过 GET 和 POST 方法发送的表单数据的结果。


实例

 

<html>
<head>
<title>An HTML Form that Calls Itself</title>
</head>
<body>
<div>
<?php
if ( ! empty( $_POST['guess'] ) ) {
    print "last guess: ".$_POST['guess'];
}
?>
<form method="post" action="<?php print $_SERVER['PHP_SELF']?>">
<p>
Type your guess here: <input type="text" name="guess" />
</p>
</form>
</div>
</body>
</html>

由于表的提供大量数据时我们尽量用post来获取,更复杂的实例二
 
实例二

<?php

$self = $_SERVER['PHP_SELF'];
$username = $_POST['username'];
$useraddr = $_POST['useraddr'];
$comments = $_POST['comments'];
$sent = $_POST['sent'];

$form ="<form action="$self" method="post">";
$form.="Name:<input type="text" name="username"";
$form.=" size="30" value="$username" >";
$form.="Email:<input type="text" name="useraddr"";
$form.=" size="30" value="$useraddr">";
$form.="Comments:<textarea name="comments" >";
$form.="$comments</textarea><br/>";
$form.="<input type="submit" name="sent" value="Send Form">";
$form.="</form>";

if($sent)
{
  $valid=true;

  if( !$username )
  { $errmsg.="Enter your name...<br />"; $valid = false; }

  if( !$useraddr )
  { $errmsg .="Enter your email address...<br />"; $valid = false; }

  if( !$comments )
  { $errmsg.="Enter your comments...<br />"; $valid = false; }

  $useraddr = trim($useraddr);
  $_name = "/^[-!#$%&'*+./0-9=?A-Z^_'{|}~]+";
  $_host = "([-0-9A-Z]+.)+";
  $_tlds = "([0-9A-Z]){2,4}$/i";
  if( !preg_match( $_name."@".$_host .$_tlds,$useraddr ) )
  {
    $errmsg.="Email address has incorrect format!<br />";
    $valid=false;
  }
}

if($valid != true)
{
  echo( $errmsg.$form );
}
else
{
  $to = "php@h.com";

  $re = "Feedback from $username";

  $msg = $comments;

  $headers  = "MIME-Version: 1.0rn";
  $headers .= "Content-type: text/html;";  
  $headers .= "charset="iso-8859-1"rn";

  $headers .= "From: $useraddr rn";

  if(mail($to,$re,$msg, $headers))
  { echo("Your comments have been sent - thanks $username");}

}
?>

上面可对用户提交的数据进行一些相关处理了。上只讲了$_POST

$_POST 变量
$_POST 变量是一个数组,内容是由 HTTP POST 方法发送的变量名称和值。

$_POST 变量用于收集来自 method="post" 的表单中的值。从带有 POST 方法的表单发送的信息,对任何人都是不可见的(不会显示在浏览器的地址栏),并且对发送信息的量也没有限制。

php教程文件操作,包括对文件函数fopen,is_writable,fwrite,fclose来进行文件操作,下面先看实例。

<?php
$filename = "html/cache.txt";
$contents = "我是张斌";
if(is_writable($filename)){
if(($handle = fopen($filename,"a") )== false){
echo "写入文件 $filename 失败";
exit();
}
if(fwrite($handle,$contents) == false){
echo "写入文件$filename失败";
exit();
}
echo "写入文件 $filename 成功";

fclose($handle);
}else{
echo "文件$filename不可写入";
}
?>

fopen() 函数打开文件或者 URL。
如果打开失败,本函数返回 FALSE。
语法
fopen(filename,mode,include_path,context)
参数 描述
filename 必需。规定要打开的文件或 URL。
mode 必需。规定要求到该文件/流的访问类型。可能的值见下表。
include_path 可选。如果也需要在 include_path 中检索文件的话,可以将该参数设为 1 或 TRUE。
context 可选。规定文件句柄的环境。Context 是可以修改流的行为的一套选项。

定义和用法
fwrite() 函数写入文件(可安全用于二进制文件)。
语法
fwrite(file,string,length)
参数 描述
file 必需。规定要写入的打开文件。
string 必需。规定要写入文件的字符串。
length 可选。规定要写入的最大字节数。
说明
fwrite() 把 string 的内容写入文件指针 file 处。 如果指定了 length,当写入了 length 个字节或者写完了 string 以后,写入就会停止,视乎先碰到哪种情况。
fwrite() 返回写入的字符数,出现错误时则返回 false。

<?php
$file = fopen("test.txt","w");
echo fwrite($file,"Hello World. Testing!");
fclose($file);
?>

is_writable
( PHP 4中, PHP 5中)

is_writable -告诉是否filename是写

描述
布尔is_writable (字符串$文件名)
返回TRUE ,如果文件存在且可写。该文件名参数可能是一个目录名称,让您可以检查,如果是可写的目录。

请记住, PHP的可访问该文件的用户ID的Web服务器运行(通常是'谁' ) 。安全模式的限制是没有考虑到。

<?php
$filename = 'test.txt';
if (is_writable($filename)) {
    echo 'The file is writable';
} else {
    echo 'The file is not writable';
}
?>

php教程数组与对象相互转换方法

function arrayToObject($e){
    if( gettype($e)!='array' ) return;
    foreach($e as $k=>$v){
        if( gettype($v)=='array' || getType($v)=='object' )
            $e[$k]=(object)arrayToObject($v);
    }
    return (object)$e;
}

function objectToArray($e){
    $e=(array)$e;
    foreach($e as $k=>$v){
        if( gettype($v)=='resource' ) return;
        if( gettype($v)=='object' || gettype($v)=='array' )
            $e[$k]=(array)objectToArray($v);
    }
    return $e;
}

关于数组转换为对象,在phpx有看到一些帖子讨论

$andy = array();
$andy['a'] = 1;
$andy['b'] = 2;
$andy['c'] = 3;

把andy强制转换为数组,似乎引用的方便些了,主要是变成了->

$andy = array();
$andy = (object)$andy;
$andy->a = 1;
$andy->b = 2;
$andy->c = 3;

还嫌它麻烦,再用StdClass

$andy = new StdClass;
$andy->a = 1;
$andy->b = 2;
$andy->c = 3;

stdClass 是PHP的一个基类,所有的类几乎都继承这个类,所以任何时候都可以被new,可以

让这个变量成为一个object。同时,这个基类又有一个特殊的地方, 就是没有方法。在这里

还有一点是对象和数组资源耗费的问题:PHP5的对象的独特性,对象在任何地方被调用,都

是引用地址型的,所以相对消耗的资源会少一 点。在其它页面为它赋值时是直接修改,而不

是引用一个拷贝。数组在程序的使用中应该是最方便的,然而数组的每次被引用($a = $b)

,其实都是创建了一个副本,而且,数组被unset后,还是占用了内存(没有测试过)。还有

一个函数arrayobject,可以直接将数组转化为 对象这也是一个好办法哦。
ArrayObject::__construct -- Construct a new array object

<?php
$array = array('1' => 'one',
'2' => 'two',
'3' => 'three');

$arrayobject = new ArrayObject($array);

print_r($arrayobject);
?>

ArrayObject Object
(
    [1] => one
    [2] => two
    [3] => three
)

试验了一下对象转换为数组,也可以强制转换

$arr = (array)$obj;

如下例子转换结果,可对比:

Tag Object
(
    [name] => main
    [text] =>
    [parrent] =>
    [content] =>
    [props教程] => Array
        (
        )

    [inner] => Array
        (
        )

    [level] => 0
)

Array
(
    [name] => main
    [text] =>
    [parrent] =>
    [content] =>
    [props] => Array
        (
        )

    [inner] => Array
        (
        )

    [level] => 0
)

php教程 用户cookie登录验证与mysql教程数据登录验证的方法

 

<?php
unset($username);
if ($_COOKIE['login']) {
    list($c_username,$cookie_hash) = split(',',$_COOKIE['login']);
    if (md5($c_username.$secret_word) == $cookie_hash) {
        $username = $c_username;
    } else {
        print "You have sent a bad cookie.";
    }
}

if ($username) {
    print "Welcome, $username.";
} else {
    print "Welcome, anonymous user.";
}
?>


 

看个完整的与数据库教程连接登录的代码

<html>

 <head>
  <title>Log-In Page</title>
 </head>

 <body>
 Please enter your user details to log-in here...

 <form action = "authenticate.php" method = "post">
 Username:<br>
 <input type = "text" name = "username">
 <br><br>
 Password:<br>
 <input type = "text" name = "password">
 <br><br>
 <input type = "submit" value = "Log In">
 </form>

 </body>

</html>

File: authenticate.php


<?php

$username = $_POST['username'];
$password = $_POST['password'];
$self =     $_SERVER['PHP_SELF'];
$referer =  $_SERVER['HTTP_REFERER'];

if( ( !$username ) or ( !$password ) )
{ header( "Location:$referer" ); exit(); }

$conn=@mysql_connect( "localhost", "userName", "password" ) or die( "Could not connect" );

$rs = @mysql_select_db( "my_database", $conn ) or die( "Could not select database" );
$sql = "select * from users where user_name="$username" and password = password( "$password" )";
 
$rs = mysql_query( $sql, $conn ) or die( "Could not execute query" );

$num = mysql_numrows( $rs );

if( $num != 0 )
{
  $msg = "<h3>Welcome $username - your log-in succeeded!</h3>";
}
else
{
  header( "Location:$referer" ); exit();
}
?>

<html>

 <head>
  <title>Log-In Authenticated</title>
  </head>

  <body>
   <?php echo( $msg ); ?>
  </body>

</html>

[!--infotagslink--]

相关文章

  • php读取zip文件(删除文件,提取文件,增加文件)实例

    下面小编来给大家演示几个php操作zip文件的实例,我们可以读取zip包中指定文件与删除zip包中指定文件,下面来给大这介绍一下。 从zip压缩文件中提取文件 代...2016-11-25
  • 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
  • Jupyter Notebook读取csv文件出现的问题及解决

    这篇文章主要介绍了JupyterNotebook读取csv文件出现的问题及解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2023-01-06
  • Python中的imread()函数用法说明

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

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

    下面小编就为大家带来一篇C#学习笔记- 随机函数Random()的用法详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25
  • Photoshop打开PSD文件空白怎么解决

    有时我们接受或下载到的PSD文件打开是空白的,那么我们要如何来解决这个 问题了,下面一聚教程小伙伴就为各位介绍Photoshop打开PSD文件空白解决办法。 1、如我们打开...2016-09-14
  • C#操作本地文件及保存文件到数据库的基本方法总结

    C#使用System.IO中的文件操作方法在Windows系统中处理本地文件相当顺手,这里我们还总结了在Oracle中保存文件的方法,嗯,接下来就来看看整理的C#操作本地文件及保存文件到数据库的基本方法总结...2020-06-25
  • 解决python 使用openpyxl读写大文件的坑

    这篇文章主要介绍了解决python 使用openpyxl读写大文件的坑,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-13
  • C#实现HTTP下载文件的方法

    这篇文章主要介绍了C#实现HTTP下载文件的方法,包括了HTTP通信的创建、本地文件的写入等,非常具有实用价值,需要的朋友可以参考下...2020-06-25
  • SpringBoot实现excel文件生成和下载

    这篇文章主要为大家详细介绍了SpringBoot实现excel文件生成和下载,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-02-09
  • php无刷新利用iframe实现页面无刷新上传文件(1/2)

    利用form表单的target属性和iframe 一、上传文件的一个php教程方法。 该方法接受一个$file参数,该参数为从客户端获取的$_files变量,返回重新命名后的文件名,如果上传失...2016-11-25
  • 金额阿拉伯数字转换为中文的自定义函数

    CREATE FUNCTION ChangeBigSmall (@ChangeMoney money) RETURNS VarChar(100) AS BEGIN Declare @String1 char(20) Declare @String2 char...2016-11-25
  • C++中 Sort函数详细解析

    这篇文章主要介绍了C++中Sort函数详细解析,sort函数是algorithm库下的一个函数,sort函数是不稳定的,即大小相同的元素在排序后相对顺序可能发生改变...2022-08-18
  • Android开发中findViewById()函数用法与简化

    findViewById方法在android开发中是获取页面控件的值了,有没有发现我们一个页面控件多了会反复研究写findViewById呢,下面我们一起来看它的简化方法。 Android中Fin...2016-09-20
  • php批量替换内容或指定目录下所有文件内容

    要替换字符串中的内容我们只要利用php相关函数,如strstr,str_replace,正则表达式了,那么我们要替换目录所有文件的内容就需要先遍历目录再打开文件再利用上面讲的函数替...2016-11-25
  • PHP文件上传一些小收获

    又码了一个周末的代码,这次在做一些关于文件上传的东西。(PHP UPLOAD)小有收获项目是一个BT种子列表,用户有权限上传自己的种子,然后配合BT TRACK服务器把种子的信息写出来...2016-11-25
  • PHP用strstr()函数阻止垃圾评论(通过判断a标记)

    strstr() 函数搜索一个字符串在另一个字符串中的第一次出现。该函数返回字符串的其余部分(从匹配点)。如果未找到所搜索的字符串,则返回 false。语法:strstr(string,search)参数string,必需。规定被搜索的字符串。 参数sea...2013-10-04