$dao = new PDO("mysql:host=ホスト名;dbname=データベース名;charset=utf8",DBユーザー名,DBパスワード,
array(PDO::ATTR_EMULATE_PREPARES => false));
$stmt = $this->dao->query("SELECT * FROM nekos");
$data = $stmt->fetchAll(); // 2次元構造のデータとして取得
function makeToken($length = 8)
{
return base_convert(mt_rand(pow(36, $length - 1), pow(36, $length) - 1), 10, 36);
}
<?php
namespace CrudBase;
class Neko{
private static $singleton;
public static function getInstance(){
if (!isset(self::$singleton)) {
self::$singleton = new Neko();
}
return self::$singleton;
}
}
インスタンスを取得する
$neko = Neko::getInstance();
$envs = getEnvSimple('.env');
echo '<pre>';
var_dump($envs);
echo '</pre>';
function getEnvSimple($env_fn) {
// 引数のiniファイル名が空、もしくは存在しなければ、なら、nullを返して終了
if (! $env_fn) return null;
$str = null;
$env_fn=mb_convert_encoding($env_fn,'SJIS','UTF-8');
if (!is_file($env_fn)){
return null;
}
if ($fp = fopen ( $env_fn, "r" )) {
$data = array ();
while ( false !== ($line = fgets ( $fp )) ) {
$str .= mb_convert_encoding ( $line, 'utf-8', 'utf-8,sjis,euc_jp,jis' );
}
}
fclose ( $fp );
$ary = preg_split( "/¥R/", $str );
$envs = [];
foreach($ary as $line_str){
$line_str = trim($line_str);
if(empty($line_str)) continue;
$ary2 = preg_split("/=/", $line_str);
if(count($ary2) < 2) continue;
$key = trim($ary2[0]);
if(empty($key)) continue;
$envs[$key] = trim($ary2[1]);
}
return $envs;
}
.envファイルの例
ANIMAL_NAME = おキャット様
APP_NAME=Example
APP_ENV=local
APP_KEY=abcd
APP_DEBUG=true
APP_URL=http://localhost
LOG_CHANNEL=stack
LOG_DEPRECATIONS_CHANNEL=null
LOG_LEVEL=debug
DB_CONNECTION=mysql
DB_HOST=localhost
$test1 = intval(null); // → 0
$test2 = intval(''); // → 0
$test3 = intval('0.01'); // → 0
$test4 = intval('あ'); // → 0
$test5 = intval('123456'); // → 123456
$test6= intval('-123456'); // → -123456
$test7= intval('-0.01'); // → 0
類似関数にfloatval()、doubleval()というものもあります。