LoginSignup
4
5

More than 3 years have passed since last update.

【PHP】業務で使ってきたPHP関数メモ

Posted at

最初に

仕事で学習してきた内容を書き出していきます。
基本的には自分自身でわかるような内容になりますので、ご容赦ください。

※「覚えてない」で検索すると未調査の内容が出るよ
※「要勉強」で検索すると/未勉強の内容が出るよ

試験系

str_split

文字列解体やデータ整形に使った
https://www.php.net/manual/ja/function.preg-split.php

↓配列の文字列を1文字ずつ分解して、再度配列に入れ直す手段
hoge.php
// hogeという文字列があるとする
$array = array('hoge')

foreach ($array as $k => $v) {
    // 配列内の文字列を1文字ずつに分解し再格納
    $array = str_split($v);

print_r($array);
exit;
// 0=>h ,1=>o, 2=>g, 3=>e みたいになるはず
↓配列の文字列の中に、空白などが含まれている場合
hoge.php
// ho ge ho geという文字列があるとする
$array = array('ho ge ho ge')

foreach ($array as $k => $v) {

    // カンマまたは " ", \r, \t, \n , \f などの空白文字で句を分割する。
    $array = preg_split("/[\s,]+/", $v);

print_r($array);
exit;
// 0=>ho, 1=>ge, 2=>ho, 3=>ge みたいになるはず

$lines = preg_split("/\s/",$value);
// とかで処理したこともあるが、何が違うのか覚えてない

 strcmp

文字列の順番を入れ替えるバブルソートの時に使おうと思ったやつ
https://www.php.net/manual/ja/function.strcmp.php

↓1つ前の文字列を比較して、入れ替えたい処理

⚠️正しくない処理なので注意⚠️
この場合、大なり小なりの判定結果が-1,0,1で返ってくるらしい

hoge.php
// そえぞれの配列にh o g eという文字列があるとする
$array = array('h' , 'o' , 'g' , 'e');

// 初期化
$count = 1;

foreach($array as $k => $v){
    // 1つ隣なので、keyが[1]以降から処理
    if($k >= $count){
        // 文字列の比較判定
        $array = strcmp($array[$k-1] , $v);
        // 1つ後ろの配列と比較 1個前のデータの方が大きかったら
        if($check > 0){
            $tmp = $v;
            print_r($tmp);
            $v = $array[$k-1];
            print_r($v);
            $array[$k-1] = $tmp;
            $i++;
        }
    }
    if($sort_count > 0){
        return ex_bubble_sort($array);
    }
    else{
        return $array;
    }
}

print_r($array);
exit;

// ehgoとかにしたかったんや・・・要勉強

実務系

in_array()

配列に値があるかチェックするやつ
https://www.php.net/manual/ja/function.in-array.php

throw new HttpNotFoundException;

http://fuelphp.jp/docs/1.6/general/error.html
404をスローしている

Response::redirect($hoge[$hoge], 'hoge', 301);

http://fuelphp.jp/docs/1.7/classes/response.html
新しいURLにリダイレクトする方法を提供

Uri クラス

http://fuelphp.jp/docs/1.6/classes/uri.html
└URIとURLの違い
 https://webtan.impress.co.jp/e/2010/03/09/7539

hoge.php
Uri::String() // 現在のURIを取得することができる

DELETE

SQLでデリートするときはIDなどをWHEREで絞ろう

jQueryで子要素を取得する方法:children(), find()

childNodes
https://www.javadrive.jp/javascript/dom/index4.html

JavaScriptでiframeを操作する方法
https://techacademy.jp/magazine/23192

str_replace('\', '\\', $hoge['hoge']);

フォーム内の文字列に「\」がある状態で、DBにPOSTすると文字化ける
なので、\にさせることで\を表現する処理

関数

public static functionにすると簡単にインスタンス化できるようになる
というより呼び出せる範囲とかが増える感じっぽい

悩んだら

hoge.php
print_r('<pre>');
print_r($provision_list);
print_r('</pre>');

var_dump($変数名など);
exit;

✨整理前の吐き出しだけだよ✨

4
5
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5