mirror of
https://github.com/fofolee/uTools-Manuals.git
synced 2025-06-19 06:16:58 +08:00
69 lines
4.6 KiB
HTML
69 lines
4.6 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
|
<title>Object 对象</title>
|
|
</head>
|
|
<div id="layout">
|
|
<div id="layout-content"><div id="language.types.object" class="sect1">
|
|
<h2 class="title">Object 对象</h2>
|
|
|
|
<div class="sect2" id="language.types.object.init">
|
|
<h3 class="title">对象初始化</h3>
|
|
|
|
<p class="para">
|
|
要创建一个新的对象 <span class="type"><a href="language.types.object.html" class="type object">object</a></span>,使用 <em>new</em> 语句实例化一个类:
|
|
</p>
|
|
|
|
<div class="informalexample">
|
|
<div class="example-contents">
|
|
<div class="phpcode"><code><span style="color: #000000">
|
|
<span style="color: #0000BB"><?php<br /></span><span style="color: #007700">class </span><span style="color: #0000BB">foo<br /></span><span style="color: #007700">{<br /> function </span><span style="color: #0000BB">do_foo</span><span style="color: #007700">()<br /> {<br /> echo </span><span style="color: #DD0000">"Doing foo."</span><span style="color: #007700">; <br /> }<br />}<br /><br /></span><span style="color: #0000BB">$bar </span><span style="color: #007700">= new </span><span style="color: #0000BB">foo</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$bar</span><span style="color: #007700">-></span><span style="color: #0000BB">do_foo</span><span style="color: #007700">();<br /></span><span style="color: #0000BB">?></span>
|
|
</span>
|
|
</code></div>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<p class="simpara">
|
|
详细讨论参见手册中<a href="language.oop5.html" class="link">类与对象</a>章节。
|
|
</p>
|
|
|
|
</div>
|
|
|
|
<div class="sect2" id="language.types.object.casting">
|
|
<h3 class="title">转换为对象</h3>
|
|
|
|
<p class="para">
|
|
如果将一个对象转换成对象,它将不会有任何变化。如果其它任何类型的值被转换成对象,将会创建一个内置类
|
|
<em>stdClass</em> 的实例。如果该值为
|
|
<strong><code>NULL</code></strong>,则新的实例为空。
|
|
<span class="type"><a href="language.types.array.html" class="type array">array</a></span> 转换成 <span class="type"><a href="language.types.object.html" class="type object">object</a></span> 将使键名成为属性名并具有相对应的值。注意:在这个例子里, 使用 PHP 7.2.0 之前的版本,数字键只能通过迭代访问。
|
|
</p>
|
|
|
|
<div class="informalexample">
|
|
<div class="example-contents">
|
|
<div class="phpcode"><code><span style="color: #000000">
|
|
<span style="color: #0000BB"><?php<br />$obj </span><span style="color: #007700">= (object) array(</span><span style="color: #DD0000">'1' </span><span style="color: #007700">=> </span><span style="color: #DD0000">'foo'</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(isset(</span><span style="color: #0000BB">$obj</span><span style="color: #007700">->{</span><span style="color: #DD0000">'1'</span><span style="color: #007700">})); </span><span style="color: #FF8000">// PHP 7.2.0 后输出 'bool(true)',之前版本会输出 'bool(false)' <br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">key</span><span style="color: #007700">(</span><span style="color: #0000BB">$obj</span><span style="color: #007700">)); </span><span style="color: #FF8000">// PHP 7.2.0 后输出 'string(1) "1"',之前版本输出 'int(1)' <br /></span><span style="color: #0000BB">?></span>
|
|
</span>
|
|
</code></div>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<p class="para">
|
|
对于其他值,会包含进成员变量名 <em>scalar</em>。
|
|
</p>
|
|
|
|
<div class="informalexample">
|
|
<div class="example-contents">
|
|
<div class="phpcode"><code><span style="color: #000000">
|
|
<span style="color: #0000BB"><?php<br />$obj </span><span style="color: #007700">= (object) </span><span style="color: #DD0000">'ciao'</span><span style="color: #007700">;<br />echo </span><span style="color: #0000BB">$obj</span><span style="color: #007700">-></span><span style="color: #0000BB">scalar</span><span style="color: #007700">; </span><span style="color: #FF8000">// outputs 'ciao'<br /></span><span style="color: #0000BB">?></span>
|
|
</span>
|
|
</code></div>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
</div></div></div></body></html> |