mirror of
https://github.com/yiisoft/yii2.git
synced 2025-11-03 13:58:55 +08:00
Added links to PHP.net to apidoc
This commit is contained in:
@ -179,6 +179,7 @@ class ApiMarkdown extends GithubMarkdown
|
||||
$offset
|
||||
];
|
||||
}
|
||||
|
||||
if ($context !== null) {
|
||||
// Collection resolves relative types
|
||||
$object = (new Collection([$object], $context->phpDocContext))->__toString();
|
||||
@ -188,6 +189,11 @@ class ApiMarkdown extends GithubMarkdown
|
||||
static::$renderer->createTypeLink($type, null, $title),
|
||||
$offset
|
||||
];
|
||||
} elseif (strpos($typeLink = static::$renderer->createTypeLink($object, null, $title), '<a href') !== false) {
|
||||
return [
|
||||
$typeLink,
|
||||
$offset
|
||||
];
|
||||
}
|
||||
static::$renderer->apiContext->errors[] = [
|
||||
'file' => ($context !== null) ? $context->sourceFile : null,
|
||||
|
||||
@ -85,7 +85,30 @@ abstract class BaseRenderer extends Component
|
||||
}
|
||||
}
|
||||
if (!is_object($type)) {
|
||||
$links[] = $type;
|
||||
$linkText = ltrim($type, '\\');
|
||||
if ($title !== null) {
|
||||
$linkText = $title;
|
||||
}
|
||||
$phpTypes = [
|
||||
'callable',
|
||||
'array',
|
||||
'string',
|
||||
'boolean',
|
||||
'integer',
|
||||
'float',
|
||||
'object',
|
||||
'resource',
|
||||
'null',
|
||||
];
|
||||
// check if it is PHP internal class
|
||||
if (((class_exists($type, false) || interface_exists($type, false) || trait_exists($type, false)) &&
|
||||
($reflection = new \ReflectionClass($type)) && $reflection->isInternal())) {
|
||||
$links[] = $this->generateLink($linkText, 'http://www.php.net/class.' . strtolower(ltrim($type, '\\'))) . $postfix;
|
||||
} elseif (in_array($type, $phpTypes)) {
|
||||
$links[] = $this->generateLink($linkText, 'http://www.php.net/language.types.' . strtolower(ltrim($type, '\\'))) . $postfix;
|
||||
} else {
|
||||
$links[] = $type;
|
||||
}
|
||||
} else {
|
||||
$linkText = $type->name;
|
||||
if ($title !== null) {
|
||||
|
||||
@ -148,7 +148,7 @@ class ApiRenderer extends BaseApiRenderer implements ViewContextInterface
|
||||
$class = $this->apiContext->classes[$class->parentClass];
|
||||
$parents[] = $this->createTypeLink($class);
|
||||
} else {
|
||||
$parents[] = $class->parentClass; // TODO link to php.net
|
||||
$parents[] = $this->createTypeLink($class->parentClass);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -167,7 +167,7 @@ class ApiRenderer extends BaseApiRenderer implements ViewContextInterface
|
||||
if(isset($this->apiContext->interfaces[$interface])) {
|
||||
$interfaces[] = $this->createTypeLink($this->apiContext->interfaces[$interface]);
|
||||
} else {
|
||||
$interfaces[] = $interface; // TODO link to php.net
|
||||
$interfaces[] = $this->createTypeLink($interface);
|
||||
}
|
||||
}
|
||||
return implode(', ', $interfaces);
|
||||
@ -185,7 +185,7 @@ class ApiRenderer extends BaseApiRenderer implements ViewContextInterface
|
||||
if(isset($this->apiContext->traits[$trait])) {
|
||||
$traits[] = $this->createTypeLink($this->apiContext->traits[$trait]);
|
||||
} else {
|
||||
$traits[] = $trait; // TODO link to php.net
|
||||
$traits[] = $this->createTypeLink($trait);
|
||||
}
|
||||
}
|
||||
return implode(', ', $traits);
|
||||
@ -203,7 +203,7 @@ class ApiRenderer extends BaseApiRenderer implements ViewContextInterface
|
||||
if(isset($this->apiContext->classes[$class])) {
|
||||
$classes[] = $this->createTypeLink($this->apiContext->classes[$class]);
|
||||
} else {
|
||||
$classes[] = $class; // TODO link to php.net
|
||||
$classes[] = $this->createTypeLink($class);
|
||||
}
|
||||
}
|
||||
return implode(', ', $classes);
|
||||
|
||||
@ -99,7 +99,7 @@ class Query extends Component implements QueryInterface
|
||||
*/
|
||||
public $params = [];
|
||||
/**
|
||||
* @var callback PHP callback, which should be used to fetch source data for the snippets.
|
||||
* @var callable PHP callback, which should be used to fetch source data for the snippets.
|
||||
* Such callback will receive array of query result rows as an argument and must return the
|
||||
* array of snippet source strings in the order, which match one of incoming rows.
|
||||
* For example:
|
||||
@ -642,7 +642,7 @@ class Query extends Component implements QueryInterface
|
||||
/**
|
||||
* Sets the PHP callback, which should be used to retrieve the source data
|
||||
* for the snippets building.
|
||||
* @param callback $callback PHP callback, which should be used to fetch source data for the snippets.
|
||||
* @param callable $callback PHP callback, which should be used to fetch source data for the snippets.
|
||||
* @return static the query object itself
|
||||
* @see snippetCallback
|
||||
*/
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
namespace yii\base;
|
||||
|
||||
/**
|
||||
* ArrayAccessTrait provides the implementation for `IteratorAggregate`, `ArrayAccess` and `Countable`.
|
||||
* ArrayAccessTrait provides the implementation for [[\IteratorAggregate]], [[\ArrayAccess]] and [[\Countable]].
|
||||
*
|
||||
* Note that ArrayAccessTrait requires the class using it contain a property named `data` which should be an array.
|
||||
* The data will be exposed by ArrayAccessTrait to support accessing the class object like an array.
|
||||
|
||||
@ -460,7 +460,7 @@ class Component extends Object
|
||||
* where `$event` is an [[Event]] object which includes parameters associated with the event.
|
||||
*
|
||||
* @param string $name the event name
|
||||
* @param callback $handler the event handler
|
||||
* @param callable $handler the event handler
|
||||
* @param mixed $data the data to be passed to the event handler when the event is triggered.
|
||||
* When the event handler is invoked, this data can be accessed via [[Event::data]].
|
||||
* @see off()
|
||||
@ -475,7 +475,7 @@ class Component extends Object
|
||||
* Detaches an existing event handler from this component.
|
||||
* This method is the opposite of [[on()]].
|
||||
* @param string $name event name
|
||||
* @param callback $handler the event handler to be removed.
|
||||
* @param callable $handler the event handler to be removed.
|
||||
* If it is null, all handlers attached to the named event will be removed.
|
||||
* @return boolean if a handler is found and detached
|
||||
* @see on()
|
||||
|
||||
@ -71,7 +71,7 @@ class Event extends Object
|
||||
*
|
||||
* @param string $class the fully qualified class name to which the event handler needs to attach.
|
||||
* @param string $name the event name.
|
||||
* @param callback $handler the event handler.
|
||||
* @param callable $handler the event handler.
|
||||
* @param mixed $data the data to be passed to the event handler when the event is triggered.
|
||||
* When the event handler is invoked, this data can be accessed via [[Event::data]].
|
||||
* @see off()
|
||||
@ -88,7 +88,7 @@ class Event extends Object
|
||||
*
|
||||
* @param string $class the fully qualified class name from which the event handler needs to be detached.
|
||||
* @param string $name the event name.
|
||||
* @param callback $handler the event handler to be removed.
|
||||
* @param callable $handler the event handler to be removed.
|
||||
* If it is null, all handlers attached to the named event will be removed.
|
||||
* @return boolean whether a handler is found and detached.
|
||||
* @see on()
|
||||
|
||||
@ -63,7 +63,7 @@ class ActionColumn extends Column
|
||||
*/
|
||||
public $buttons = [];
|
||||
/**
|
||||
* @var callback a callback that creates a button URL using the specified model information.
|
||||
* @var callable a callback that creates a button URL using the specified model information.
|
||||
* The signature of the callback should be the same as that of [[createUrl()]].
|
||||
* If this property is not set, button URLs will be created using [[createUrl()]].
|
||||
*/
|
||||
|
||||
@ -88,7 +88,7 @@ abstract class BaseMailer extends Component implements MailerInterface, ViewCont
|
||||
*/
|
||||
public $fileTransportPath = '@runtime/mail';
|
||||
/**
|
||||
* @var callback a PHP callback that will be called by [[send()]] when [[useFileTransport]] is true.
|
||||
* @var callable a PHP callback that will be called by [[send()]] when [[useFileTransport]] is true.
|
||||
* The callback should return a file name which will be used to save the email message.
|
||||
* If not set, the file name will be generated based on the current timestamp.
|
||||
*
|
||||
|
||||
@ -31,7 +31,7 @@ use yii\base\InvalidConfigException;
|
||||
class FilterValidator extends Validator
|
||||
{
|
||||
/**
|
||||
* @var callback the filter. This can be a global function name, anonymous function, etc.
|
||||
* @var callable the filter. This can be a global function name, anonymous function, etc.
|
||||
* The function signature must be as follows,
|
||||
*
|
||||
* ~~~
|
||||
|
||||
@ -54,7 +54,7 @@ use yii\base\ActionFilter;
|
||||
class AccessControl extends ActionFilter
|
||||
{
|
||||
/**
|
||||
* @var callback a callback that will be called if the access should be denied
|
||||
* @var callable a callback that will be called if the access should be denied
|
||||
* to the current user. If not set, [[denyAccess()]] will be called.
|
||||
*
|
||||
* The signature of the callback should be as follows:
|
||||
|
||||
@ -61,7 +61,7 @@ class AccessRule extends Component
|
||||
*/
|
||||
public $verbs;
|
||||
/**
|
||||
* @var callback a callback that will be called to determine if the rule should be applied.
|
||||
* @var callable a callback that will be called to determine if the rule should be applied.
|
||||
* The signature of the callback should be as follows:
|
||||
*
|
||||
* ~~~
|
||||
@ -73,7 +73,7 @@ class AccessRule extends Component
|
||||
*/
|
||||
public $matchCallback;
|
||||
/**
|
||||
* @var callback a callback that will be called if this rule determines the access to
|
||||
* @var callable a callback that will be called if this rule determines the access to
|
||||
* the current action should be denied. If not set, the behavior will be determined by
|
||||
* [[AccessControl]].
|
||||
*
|
||||
|
||||
@ -46,7 +46,7 @@ use yii\base\Action;
|
||||
class HttpCache extends ActionFilter
|
||||
{
|
||||
/**
|
||||
* @var callback a PHP callback that returns the UNIX timestamp of the last modification time.
|
||||
* @var callable a PHP callback that returns the UNIX timestamp of the last modification time.
|
||||
* The callback's signature should be:
|
||||
*
|
||||
* ~~~
|
||||
@ -58,7 +58,7 @@ class HttpCache extends ActionFilter
|
||||
*/
|
||||
public $lastModified;
|
||||
/**
|
||||
* @var callback a PHP callback that generates the Etag seed string.
|
||||
* @var callable a PHP callback that generates the Etag seed string.
|
||||
* The callback's signature should be:
|
||||
*
|
||||
* ~~~
|
||||
|
||||
Reference in New Issue
Block a user