Skip to content

Instantly share code, notes, and snippets.

$ php -v
PHP 5.5.14 (cli) (built: Jul 23 2014 16:08:06) (DEBUG)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2014, by Zend Technologies
with Xdebug v2.2.5, Copyright (c) 2002-2014, by Derick Rethans
$ php -d zend.multibyte=1 -d zend.script_encoding='EUC-JP' aa.php
PHP Warning: Unexpected character in input: ' in /tmp/aa.php on line 11
PHP Warning: Unexpected character in input: ' in /tmp/aa.php on line 11
PHP Warning: Unexpected character in input: ' in /tmp/aa.php on line 11
@do-aki
do-aki / eachlize.php
Created August 15, 2014 05:49
同じメソッドで foreach も each(function) もできるようにする例
<?php
class R {
private $begin;
private $end;
public function __construct($begin, $end) {
$this->begin = $begin;
$this->end = $end;
}
@do-aki
do-aki / groonga-http.php
Last active August 29, 2015 14:05
use groonga with nise-nabe/groonga-http-php
<?php
require __DIR__ . '/vendor/autoload.php';
use Groonga\Http\Client;
$grn = new Client('http://localhost:10041');
$grn->tableCreate('Site', ['flags' => 'TABLE_HASH_KEY','key_type' => 'ShortText']);
$grn->columnCreate('Site', 'title', 'COLUMN_SCALAR', 'ShortText');
$grn->load('Site', json_encode([
["_key" => "http://example.org/","title" => "This is test record 1!"],
<?php
$grn = grn_ctx_init();
grn_ctx_connect($grn, "localhost", 10043);
grn_ctx_send($grn, "table_create Site TABLE_HASH_KEY ShortText");
grn_ctx_recv($grn);
grn_ctx_send($grn, "column_create Site title COLUMN_SCALAR ShortText");
grn_ctx_recv($grn);
<?php
$ctx = grn_get_default_ctx(); // grn_ctx_open(0)
$db = grn_db_open_or_create($ctx, '/tmp/db');
$table = grn_table_open_or_create(
$ctx,
'Site',
null, // path
GRN_TABLE_HASH_KEY,
<?php
namespace sample;
use dooaki\Phroonga\Groonga;
use dooaki\Phroonga\GroongaEntity;
class Message {
use GroongaEntity;
public static function _schema() {
@do-aki
do-aki / zend_language_parser.y.diff
Created December 5, 2011 01:56
Difference between 5.3.8 and 5.4.0RC2
--- php-5.3.8/Zend/zend_language_parser.y Sun Jun 12 10:43:10 2011
+++ php-5.4.0RC2/Zend/zend_language_parser.y Tue Nov 29 23:15:18 2011
@@ -18,7 +18,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: zend_language_parser.y 312076 2011-06-12 01:43:10Z felipe $ */
+/* $Id: zend_language_parser.y 318823 2011-11-06 13:25:45Z felipe $ */
/*
@do-aki
do-aki / zend_language_scanner.l.diff
Created December 5, 2011 01:56
Difference between 5.3.8 and 5.4.0RC2
--- php-5.3.8/Zend/zend_language_scanner.l Mon Jan 03 23:39:48 2011
+++ php-5.4.0RC2/Zend/zend_language_scanner.l Tue Sep 13 22:29:35 2011
@@ -21,7 +21,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: zend_language_scanner.l 307028 2011-01-03 14:39:48Z iliaa $ */
+/* $Id: zend_language_scanner.l 316627 2011-09-13 13:29:35Z dmitry $ */
#if 0
@do-aki
do-aki / session.c
Created December 6, 2011 02:24
PHP 5.4.0RC2 ext/session/session.c
/*
+----------------------------------------------------------------------+
| PHP Version 5 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2011 The PHP Group |
+----------------------------------------------------------------------+
| This source file is subject to version 3.01 of the PHP license, |
| that is bundled with this package in the file LICENSE, and is |
| available through the world-wide-web at the following url: |
| http://www.php.net/license/3_01.txt |
@do-aki
do-aki / bf_on_php.php
Created December 19, 2011 08:10
run Brainf*ck on PHP
<?php
if (isset($argv[1]) && file_exists($argv[1])) {
$code = file_get_contents($argv[1]);
} else {
fputs(STDERR, "no source (follow output is fizzbuzz demo)\n\n");
$code = file_get_contents(__FILE__, 0, null, __COMPILER_HALT_OFFSET__);
}
$buffer = array_pad(array(), 30, 0);