Posted
Filed under 프로그래밍/PHP
https://github.com/phpDocumentor/fig-standards/blob/master/proposed/phpdoc.md#7-describing-hashes

Tags

Tags are single words prefixed by a "@" symbol. Tags inform parsers how to present information and modify display of documentation as well as allow the IDE to define variable types. All tags are optional, but if you use a tag, they do have specific requirements to parse properly.

Common tags
Tag Usage Description
@abstract   Documents an abstract class, class variable or method.
@access public, private or protected Documents access control for an element. @access private indicates that documentation of element be prevented.
@author author name <author@email> Documents the author of the current element.
@copyright name date Documents copyright information.
@deprecated version Documents a method as deprecated.
@deprec   Same as @deprecated
@example /path/to/example Documents the location of an external saved example file.
@exception   Documents an exception thrown by a method — also see @throws.
@global type $globalvarname Documents a global variable or its use in a function or method.
@ignore   Prevents the documentation of an element
@internal   Private information for advanced developers
@link URL  
@name global variable name Specifies an alias for a variable. For example, $GLOBALS['myvariable'] becomes $myvariable
@magic   phpdoc.de compatibility "phpDocumentor tags". http://manual.phpdoc.org/HTMLframesConverter/default/phpDocumentor/tutorial_phpDocumentor.howto.pkg.html.
@package name of a package Documents a group of related classes and functions.
@param type [$varname] description  
@return type description This tag should not be used for constructors or methods defined with a void return type.[citation needed]
@see element Documents an association to any element (global variable, include, page, class, function, define, method, variable).
@since version Documents when a method was added to a class.
@static   Documents a static class or method
@staticvar type Documents a static variable's use in a function or class
@subpackage    
@throws   Documents an exception thrown by a method.
@todo   Documents things that need to be done to the code at a later date.
@var type A data type for a class variable
@version   Provides the version number of a class or method.

In addition, some parsers allow two additional inline tags: {@id}, used to allow direct linking to sections in a tutorial, and {@toc}, used to generate a table of contents from {@id}s in the file. Think of {@id} like an <a name="idname"> HTML tag as it serves the same function.

For more in depth discussion of PHPDoc tags, see http://manual.phpdoc.org/HTMLSmartyConverter/PHP/phpDocumentor/tutorial_tags.pkg.html

2012/11/16 18:04 2012/11/16 18:04
Posted
Filed under 프로그래밍/PHP
eAccelerator 를 사용하면 정말 효과가 있을까?
CodeIgniter일명 CI를 테스트 해보니 DB사용이 없는 MVC모델을 가진 노멀한 페이지에서 약 3메가 정도의 메모리를 사용하고 있다.

방문자1명이 2M라고 치면 4G정도의 메모리를 가진 서버는 동접1천 정도?
여기에 DB 모듈이나 기타 모듈이 올라가면 메모리를 늘리든 서버를 늘리든 해야한다.

PHP는 인터프린터 언어라 매번 페이지를 컴파일하는데 eAccelerator는 컴파일 해놓은걸
저장해 활용하는 일종의 캐싱이다

당연히 첫번째 불러올때는 정상 컴파일을 하기때문에 원래의 리소스만큼을 사용한다.

CI의 enable_profiler를 사용해서 측정했다.

eAccelerator 적용전
Total Execution Time : 0.0369
MEMORY USAGE : 2,832,528 bytes
eAccelerator 적용후
Total Execution Time : 0.0136
MEMORY USAGE : 621,792 bytes



eAccelerator 기본설정만으로도 훌륭하다.
벤치마킹 수치가 보여주고 있으니 별도의 설명은 안하겠다.

2012/08/23 13:58 2012/08/23 13:58
Posted
Filed under 프로그래밍/PHP

아마존 S3 PHP 주요코드

$response = $s3->list_objects('bucket', array( 
    'prefix' => 'FD/',
 'max-keys' => 1000000
)); 
  
var_dump($response->isOK()); 
print_r($response->body);

하위에 있는 모든 파일을 표시
max-keys는 몇개를 화면에 뿌릴건지를 표시 default 는 1000이다

$response = $s3->delete_all_objects('bucket','/FD\/000000000000/');

정규식을 이용한 삭제
위의 예제는 지정 디렉토리 하위까지 몽땅 삭제

$response = $s3->delete_object('bucket', 'FD/1.jpg');

한개만 삭제

$response = $s3->copy_object(array('bucket' => 'bucket','filename' =>'1.jpg'),array('bucket' => 'bucket','filename' => 'FD/2.jpg'));  

모모에서 모모로 복사

  $s3->batch()->create_object('bucket','FD/2.jpg', array(
   'fileUpload' => './3.jpg',
   'acl' => AmazonS3::ACL_PUBLIC,
  ));
  $file_upload_response = $s3->batch()->send();

파일을 S3에 전송
acl 권한을 줘야 외부에서 파일에 접근 할수 있다.

2011/10/18 11:01 2011/10/18 11:01
Posted
Filed under 프로그래밍/PHP
function _deg2rad($deg)
{
        $radians = 0.0;
        $radians = $deg * M_PI/180.0;
        return($radians);
}


function geoDistance($lat1, $lon1, $lat2, $lon2, $unit="k")
{
        $theta = $lon1 - $lon2;
        $dist = sin(_deg2rad($lat1)) * sin(_deg2rad($lat2)) + cos(_deg2rad($lat1)) * cos(_deg2rad($lat2)) * cos(_deg2rad($theta));
        $dist = acos($dist);
        $dist = rad2deg($dist);
        $miles = $dist * 60 * 1.1515;
        $unit = strtolower($unit);
        
        if ($unit == "k") {
                return ($miles * 1.609344);
        } else {
                return $miles;
        }
}
2011/09/05 11:35 2011/09/05 11:35
Posted
Filed under 프로그래밍/PHP

어디선가 퍼온 자료 입니다.
사용자 삽입 이미지


2011/08/22 11:46 2011/08/22 11:46