ホームページ >php教程 >php手册 >Shen Yi 先生の特別な PHP トレーニング ノート (2)

Shen Yi 先生の特別な PHP トレーニング ノート (2)

WBOY
WBOYオリジナル
2016-07-06 13:28:171451ブラウズ

1. このレッスンでは、いくつかの遅延関数を学習します:

リーリー

(PHP 5、PHP 7)

file_put_contents — ファイルに文字列を書き込みます

指示

int file_put_contents ( string $filename , $filename , mixed $data [, int $flags = 0 [, resource $contextmixed $data [, int $flags = 0 [, resource $context ]] )

fopen()、

fwrite()、

fclose()を順番に呼び出したのと同じ機能です。 filename does not exist, the file is created. Otherwise, the existing file is overwritten, unless the FILE_APPEND

filename が存在しない場合、

FILE_APPEND

フラグが設定されていない限り、ファイルが作成されます。
    filename パラメータ

    data データを書き込むファイル名。

書き込まれるデータ。タイプは、string、array、または

stream リソース (前述のように) です。

data

をストリームリソースとして指定した場合、ストリームに保存されているキャッシュデータが、datastream_copy_to_stream()関数を使用する場合と同様の使い方になります。

パラメータ
は配列にすることができます (ただし、多次元配列は不可)。これは
file_put_contents($filename, join('', $array))    flags と同等です。

  flags

の値は、OR (|) 演算子を使用して次のフラグを組み合わせることができます。

例えば

(PHP.netより)  <?php<br />  $file = 'people.txt';<br />  // Open the file to get existing content<br />  $current = file_get_contents($file);<br />  // Append a new person to the file<br />  $current .= "John Smithn";<br />  // Write the contents back to the file<br />  file_put_contents($file, $current);<br />  ?>

<?php<br />
$file = 'people.txt';<br /> // ファイルを開いて既存のファイルを取得しますcontent<br /> $current = file_get_contents($file);<br /> // ファイルに新しい人物を追加します<br /> $current .= "John Smithn";<br /> // コンテンツを書き戻しますファイル<br /> file_put_contents($file, $current);
<br /> ?>

リーリー リーリー リーリー PHP 4、PHP 5、PHP 7

getcwd —
現在の作業ディレクトリを取得します
リーリー string getcwd
(

void )

現在の作業ディレクトリを取得します。

リーリー FALSE 戻り値

成功した場合は現在の作業ディレクトリが返されます、失敗した場合はが返されます。 FALSE 一部の Unix バリアントでは、親ディレクトリに読み取りモードまたは検索モードが設定されていない場合、現在のディレクトリが設定されている場合でも、getcwd() は依然として

を返します。モードと権限の詳細については、
chmod() を参照してください。 🎜🎜🎜 🎜 リーリー 🎜

 

3、<span style="color: #008080;">substr</span>()

    (PHP 4, PHP 5, PHP 7)

    substr — 返回字符串的子串

  说明

    string substr ( string $string , int $start [, int $length ] )

    返回字符串 stringstartlength 参数指定的子字符串。

  参数

    string

  输入字符串。必须至少有一个字符。

    start

  如果 start 是非负数,返回的字符串将从 stringstart 位置开始,从 0 开始计算。例如,在字符串 “abcdef” 中,在位置 0 的字符是 “a”,位置 2 的字符串是 “c” 等等。

  如果 start 是负数,返回的字符串将从 string 结尾处向前数第 start 个字符开始。

  如果 string 的长度小于 start,将返回 FALSE。    

  

  Example #1 使用负数 start

  <?php<br />  $rest = substr("abcdef", -1); // 返回 "f"
  $rest = substr("abcdef", -2); // 返回 "ef"
  $rest = substr("abcdef", -3, 1); // 返回 "d"<br />  ?>

  length

  如果提供了正数的 length,返回的字符串将从 start 处开始最多包括 length 个字符(取决于 string 的长度)。

  如果提供了负数的 length,那么 string 末尾处的许多字符将会被漏掉(若 start 是负数则从字符串尾部算起)。如果 start 不在这段文本中,那么将返回一个空字符串。

  如果提供了值为 0FALSENULLlength,那么将返回一个空字符串。

  如果没有提供 length,返回的子字符串将从 start 位置开始直到字符串结尾。

  Example #2 使用负数 length

  <?php<br />  $rest = substr("abcdef", 0, -1); // 返回 "abcde"
  $rest = substr("abcdef", 2, -1); // 返回 "cde"
  $rest = substr("abcdef", 4, -4); // 返回 ""
  $rest = substr("abcdef", -3, -1); // 返回 "de"<br />  ?>

 

二、定义个自定义函数

PHP定义函数

<span style="color: #0000ff;">function</span> 函数名(参数1,参数2,参数n)    <span style="color: #008000;">//</span><span style="color: #008000;">必须有关键字funciton</span>
<span style="color: #000000;">{
      函数体;        
}</span>

如果要return就ruturn.忘记return返回值,也无所谓。如果函数有返回值,那必须返回。

三、PHP7特性:

PHP7允许在函数中增加返回值。比如string、int、array、object等

function 函数名(): string //注意冒号

{

}

四、课程代码:

 第一课我们建立了GOD这个文件,这一课,我们建立GOD_FUNC文件,通过reuqire在god文件中引入函数文件god_func。

 同时,我们为了学习PHP7新特性,专门建立god_func7这个文件,并在god文件中判断引入。

  1、god

<span style="color: #008000;">#</span><span style="color: #008000;">!/usr/local/php/bin/php</span>
<?<span style="color: #000000;">php
  
 </span><span style="color: #0000ff;">require</span>('god_fun'.<span style="color: #008080;">substr</span>(<span style="color: #ff00ff;">PHP_VERSION</span>,0,1<span style="color: #000000;">));  //判断PHP版本后引入不同的god_func

 </span><span style="color: #800080;">$result</span> =''<span style="color: #000000;">;
 </span><span style="color: #0000ff;">if</span>(<span style="color: #800080;">$argc</span> >=2<span style="color: #000000;"> )
 {
   </span>'-v'==<span style="color: #800080;">$argv</span>[1] && <span style="color: #800080;">$result</span> = 'god version is 1.0 '<span style="color: #000000;">;
    </span>'init' == <span style="color: #800080;">$argv</span>[1] && <span style="color: #800080;">$result</span> =<span style="color: #000000;"> genConfig();
 }

  </span><span style="color: #0000ff;">echo</span> <span style="color: #800080;">$result</span><span style="color: #000000;">; 
  </span><span style="color: #0000ff;">echo</span> <span style="color: #ff00ff;">PHP_EOL</span><span style="color: #000000;">;
  
</span>?>

  2、god_func

<?<span style="color: #000000;">php
  </span><span style="color: #0000ff;">function</span><span style="color: #000000;"> genConfig()
  {
    </span><span style="color: #0000ff;">return</span> <span style="color: #008080;">file_put_contents</span>(<span style="color: #008080;">getcwd</span>().'/god.json','{}').' of bytes is written.'.<span style="color: #ff00ff;">PHP_EOL</span>.'god config is created'<span style="color: #000000;">;

  }
</span>?>

  3、god_func7

<span style="color: #008080;">1</span> <?<span style="color: #000000;">php
</span><span style="color: #008080;">2</span>   <span style="color: #0000ff;">function</span> genConfig():<span style="color: #0000ff;">string</span>
<span style="color: #008080;">3</span> <span style="color: #000000;">   {
</span><span style="color: #008080;">4</span>     <span style="color: #0000ff;">return</span> <span style="color: #008080;">file_put_contents</span>(<span style="color: #008080;">getcwd</span>().'/god.json','{}').' of bytes is written.'.<span style="color: #ff00ff;">PHP_EOL</span>.'god config is created'<span style="color: #000000;">;
</span><span style="color: #008080;">5</span> 
<span style="color: #008080;">6</span> <span style="color: #000000;">   }
</span><span style="color: #008080;">7</span> ?>

 

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