Всем доброе время суток.
Я давно пользуюсь Adobe Dreamweaver CS5 в разработке своих скриптов, сайтов, порталов…
И вот в один прекрасный день я задался вопросом, а как добавить свои подсказки в Dreamweaver?
Начал как всегда с Googla, и не нашел там не чего подходящего и тогда решил разбираться самостоятельноМетод научного тыка.
В Dreamweaver если ввести такую строчку $cl = new то появится набор классов заложенных в него программистами и после объявления класса введя $cl-> появятся методы этого класса.
Я же хочу просто добавить туда свои методы и классы.
После долгих поисков я нашел папку по адресу C:\Program Files\Adobe\Adobe Dreamweaver CS5\configuration\CodeHints\BuiltinCode\, в этой папки есть несколько файлов, но нам нужен PHP_CORE.php.
Файлу нужно выставить права для редактирования.
Просмотрев его содержимое мне стало все предельно понятно, не буду показывать все содержимое этого файла покажу только часть.
Кому не понятно объясняю:
Вот небольшой пример:


Теперь работать с СМС мне стало гораздо проще, так как нету нужды периодически заглядывать в api.
Я давно пользуюсь Adobe Dreamweaver CS5 в разработке своих скриптов, сайтов, порталов…
И вот в один прекрасный день я задался вопросом, а как добавить свои подсказки в Dreamweaver?
Начал как всегда с Googla, и не нашел там не чего подходящего и тогда решил разбираться самостоятельно
Что мне хотелось получить?
В Dreamweaver если ввести такую строчку $cl = new то появится набор классов заложенных в него программистами и после объявления класса введя $cl-> появятся методы этого класса.
Я же хочу просто добавить туда свои методы и классы.
Если долго мучится что нибудь получится
После долгих поисков я нашел папку по адресу C:\Program Files\Adobe\Adobe Dreamweaver CS5\configuration\CodeHints\BuiltinCode\, в этой папки есть несколько файлов, но нам нужен PHP_CORE.php.
Файлу нужно выставить права для редактирования.
Просмотрев его содержимое мне стало все предельно понятно, не буду показывать все содержимое этого файла покажу только часть.
//@php_CORE2.xml#PDO
class PDO {
// Constants
const PARAM_BOOL=5;
const PARAM_NULL=0;
const PARAM_INT=1;
const PARAM_STR=2;
const PARAM_LOB=3;
const PARAM_STMT=4;
const PARAM_INPUT_OUTPUT=-2147483648;
const PARAM_EVT_ALLOC=0;
const PARAM_EVT_FREE=1;
const PARAM_EVT_EXEC_PRE=2;
const PARAM_EVT_EXEC_POST=3;
const PARAM_EVT_FETCH_PRE=4;
const PARAM_EVT_FETCH_POST=5;
const PARAM_EVT_NORMALIZE=6;
const FETCH_LAZY=1;
const FETCH_ASSOC=2;
const FETCH_NUM=3;
const FETCH_BOTH=4;
const FETCH_OBJ=5;
const FETCH_BOUND=6;
const FETCH_COLUMN=7;
const FETCH_CLASS=8;
const FETCH_INTO=9;
const FETCH_FUNC=10;
const FETCH_GROUP=65536;
const FETCH_UNIQUE=196608;
const FETCH_KEY_PAIR=12;
const FETCH_CLASSTYPE=262144;
const FETCH_SERIALIZE=524288;
const FETCH_PROPS_LATE=1048576;
const FETCH_NAMED=11;
const ATTR_AUTOCOMMIT=0;
const ATTR_PREFETCH=1;
const ATTR_TIMEOUT=2;
const ATTR_ERRMODE=3;
const ATTR_SERVER_VERSION=4;
const ATTR_CLIENT_VERSION=5;
const ATTR_SERVER_INFO=6;
const ATTR_CONNECTION_STATUS=7;
const ATTR_CASE=8;
const ATTR_CURSOR_NAME=9;
const ATTR_CURSOR=10;
const ATTR_ORACLE_NULLS=11;
const ATTR_PERSISTENT=12;
const ATTR_STATEMENT_CLASS=13;
const ATTR_FETCH_TABLE_NAMES=14;
const ATTR_FETCH_CATALOG_NAMES=15;
const ATTR_DRIVER_NAME=16;
const ATTR_STRINGIFY_FETCHES=17;
const ATTR_MAX_COLUMN_LEN=18;
const ATTR_EMULATE_PREPARES=20;
const ATTR_DEFAULT_FETCH_MODE=19;
const ERRMODE_SILENT=0;
const ERRMODE_WARNING=1;
const ERRMODE_EXCEPTION=2;
const CASE_NATURAL=0;
const CASE_LOWER=2;
const CASE_UPPER=1;
const NULL_NATURAL=0;
const NULL_EMPTY_STRING=1;
const NULL_TO_STRING=2;
const ERR_NONE=00000;
const FETCH_ORI_NEXT=0;
const FETCH_ORI_PRIOR=1;
const FETCH_ORI_FIRST=2;
const FETCH_ORI_LAST=3;
const FETCH_ORI_ABS=4;
const FETCH_ORI_REL=5;
const CURSOR_FWDONLY=0;
const CURSOR_SCROLL=1;
const MYSQL_ATTR_USE_BUFFERED_QUERY=1000;
const MYSQL_ATTR_LOCAL_INFILE=1001;
const MYSQL_ATTR_INIT_COMMAND=1002;
const MYSQL_ATTR_READ_DEFAULT_FILE=1003;
const MYSQL_ATTR_READ_DEFAULT_GROUP=1004;
const MYSQL_ATTR_MAX_BUFFER_SIZE=1005;
const MYSQL_ATTR_DIRECT_QUERY=1006;
const PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT=1000;
// Properties
// Methods
//@php_CORE2.xml#PDO::__construct
public function __construct( $dsn , $username , $passwd , array $options ){ }
//@php_CORE2.xml#PDO::prepare
public function prepare( $statment , array $options ){ return new PDOStatement();}
//@php_CORE2.xml#PDO::beginTransaction
public function beginTransaction(){ }
//@php_CORE2.xml#PDO::commit
public function commit(){ }
//@php_CORE2.xml#PDO::rollBack
public function rollBack(){ }
//@php_CORE2.xml#PDO::setAttribute
public function setAttribute( $attribute , $value ){ }
//@php_CORE2.xml#PDO::exec
public function exec( $query ){ }
//@php_CORE2.xml#PDO::query
public function query(){ return new PDOStatement();}
//@php_CORE2.xml#PDO::lastInsertId
public function lastInsertId( $seqname ){ }
//@php_CORE2.xml#PDO::errorCode
public function errorCode(){ }
//@php_CORE2.xml#PDO::errorInfo
public function errorInfo(){ return array();}
//@php_CORE2.xml#PDO::getAttribute
public function getAttribute( $attribute ){ }
//@php_CORE2.xml#PDO::quote
public function quote( $string , $paramtype ){ }
//@php_CORE2.xml#PDO::getAvailableDrivers
public static function getAvailableDrivers(){ return array();}
}
Кому не понятно объясняю:
- Объявляем класс
- Вписываем в тело класса нужные поля, методы, константы...
Вот небольшой пример:
class InformationSystem{
public function ShowAddComment( string $xslname, array $param = array (
'confirm_comment' => false,
'status' => 0,
'comment_mail_type' => 1
) ) { }
public function ShowInformationSystem( mixed $InformationSystemIdArray, int $information_groups_id, string $xsl_name, int $items_on_page, int $items_begin, array $external_propertys = array(), array $property = array() ) { }
public function ShowInformationSystemItem( int $information_item_id, string $xsl_name, array $external_propertys = array(), array $property = array() ) { }
public function ShowInformationSystemPageConfig( int $InformationSystem_id, int $items_on_page, array $property = array()) { }
public function ShowInformationSystemPageContent( int $InformationSystem_id, string $xsl_list, string $xsl_item, array $property = array(), array $external_propertys = array(), array $infsys_property = array() ) { }
public function ShowInformationSystemRss( int $InformationSystem_id, mixed $information_groups_id, int $items_on_page = 10, int $items_begin = 0, array $property = array() ) { }
public function ShowTagsCloud( int $InformationSystemId, str $xsl_name, array $property = array(), array $external_propertys = array() ) { }
public function UserCanAddComment( string $date, $ip, array $param = array(), string $comment_ip ) { }
public function _CallbackSearch( array $row ) { }
}
Что получилось в итоге?


Итог
Теперь работать с СМС мне стало гораздо проще, так как нету нужды периодически заглядывать в api.