Skip to content

Instantly share code, notes, and snippets.

View matstani's full-sized avatar

matstani matstani

View GitHub Profile
@matstani
matstani / core.clj
Last active October 24, 2017 02:42
try core.typed
(ns try-typed.core
(:require [clojure.core.typed :refer :all]))
; String型の引数をとりnilを返す
(ann foo [String -> nil])
(defn foo
"I don't do a whole lot."
[x]
(println x "Hello, World!"))
@matstani
matstani / core.clj
Last active December 24, 2015 21:19
ClojureでiTextを利用した日本語PDFファイル出力
(ns try-itext.core
(:import [com.itextpdf.text
Document PageSize Paragraph Font
pdf.PdfWriter pdf.BaseFont]
[java.io FileOutputStream])
(:gen-class))
(defn create-pdf []
(with-open [pdf-doc (Document. PageSize/A4 50 50 50 40)]
(doto pdf-doc
@matstani
matstani / handler.clj
Created October 7, 2013 12:05
Compojureベースのウェブアプリケーションでデータベースから読み込んだ内容をPDF出力する。
(ns try-itext-compojure.handler
(:require [ring.util.response :as response]
[compojure.core :refer [defroutes GET]]
[compojure.handler :as handler]
[compojure.route :as route]
[korma.db :refer [defdb sqlite3]]
[korma.core :as korma])
(:import [com.itextpdf.text
Document PageSize Paragraph Font]
[com.itextpdf.text.pdf
@matstani
matstani / inputfilter.php
Last active August 29, 2015 13:56
ZF2 InputFilterの例
<?php
//...
$inputFilter->add(array(
'name' => 'title',
'required' => true,
'filters' => array(
array('name' => 'StripTags'),
array('name' => 'StringTrim'),
),
'validators' => array(
@matstani
matstani / validator-examples.php
Created March 2, 2014 09:46
ZF2 バリデータの例
<?php
/**
* 半角数字のバリデータ
*
* @return array バリデータのspec
*/
public static function digitsValidator()
{
return array(
'name' =>'Digits',
@matstani
matstani / FormElementErrors.php
Last active August 29, 2015 13:56
ZF2 フォームのバリデーションエラーメッセージ表示用ビューヘルパー
<?php
namespace Album\Helper;
use Zend\Form\View\Helper\FormElementErrors as ZendFormElementErrors;
/**
* フォームのバリデーションエラーメッセージ表示用ビューヘルパー
*/
class FormElementErrors extends ZendFormElementErrors
{
@matstani
matstani / transaction.php
Last active August 25, 2017 09:03
ZF2 トランザクションサンプル
<?php
//...
//tableGatewayインスタンスからAdapterを取得する場合
$adapter = $this->tableGateway->getAdapter();
//ServiceManagerからAdapterを取得する場合
$sm = $this->getServiceLocator();
$adapter = $sm->get('Zend\Db\Adapter\Adapter');
@matstani
matstani / zf2-tablegateway-select.php
Last active August 29, 2015 13:57
ZF2 TableGatewayを利用した検索
<?php
$resultSet = $this->tableGateway->select(function ($select) {
$select->where(array(
'id' => 1,
'release_date > ?' => date('Y-m-d', strtotime('-1 year'))
));
$select->where->like('artist', 'The%');
$select->order('artist');
//echo $select->getSqlString($this->tableGateway->getAdapter()->getPlatform());
@matstani
matstani / zf2-select.php
Created March 9, 2014 09:41
ZF2 TableGatewayを使わない検索
<?php
$sm = $this->getServiceLocator();
$adapter = $sm->get('Zend\Db\Adapter\Adapter');
$sql = new \Zend\Db\Sql\Sql($adapter);
$select = $sql->select();
$select->from('album');
//echo $select->getSqlString($adapter->getPlatform());
$statement = $sql->prepareStatementForSqlObject($select);
$resultSet = $statement->execute();
@matstani
matstani / zf2-select-join.php
Last active August 29, 2015 13:57
ZF2 JOIN検索
<?php
$sm = $this->getServiceLocator();
$adapter = $sm->get('Zend\Db\Adapter\Adapter');
$sql = new \Zend\Db\Sql\Sql($adapter);
$select = $sql->select();
$select->from('album');
$select->join(
'track',
'album.id = track.album_id',
array(