国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目錄
yii2源碼學(xué)習(xí)筆記(二十),yii2源碼學(xué)習(xí)筆記
首頁 后端開發(fā) php教程 yii2源碼學(xué)習(xí)筆記(二十),yii2源碼學(xué)習(xí)筆記_PHP教程

yii2源碼學(xué)習(xí)筆記(二十),yii2源碼學(xué)習(xí)筆記_PHP教程

Jul 12, 2016 am 08:49 AM
widget yii2 。 學(xué)習(xí) 源碼 筆記 部件

yii2源碼學(xué)習(xí)筆記(二十),yii2源碼學(xué)習(xí)筆記

Widget類是所有部件的基類。yii2\base\Widget.php

<span>  1</span> <?<span>php
</span><span>  2</span> <span>/*</span><span>*
</span><span>  3</span> <span> * @link </span><span>http://www.yiiframework.com/</span>
<span>  4</span> <span> * @copyright Copyright (c) 2008 Yii Software LLC
</span><span>  5</span> <span> * @license </span><span>http://www.yiiframework.com/license/</span>
<span>  6</span>  <span>*/</span>
<span>  7</span> 
<span>  8</span> <span>namespace</span> yii\<span>base</span><span>;
</span><span>  9</span> 
<span> 10</span> <span>use Yii;
</span><span> 11</span> <span>use ReflectionClass;
</span><span> 12</span> 
<span> 13</span> <span>/*</span><span>*
</span><span> 14</span> <span> * Widget is the base class for widgets.
</span><span> 15</span> <span> * Widget是所有小部件的基類
</span><span> 16</span> <span> * @property string $id ID of the widget. 小部件標(biāo)識
</span><span> 17</span> <span> * @property \yii\web\View $view The view object that can be used to render views or view files. Note that the
</span><span> 18</span> <span> * type of this property differs in getter and setter. See [[getView()]] and [[setView()]] for details.
</span><span> 19</span> <span> * 用于渲染視圖或視圖文件的視圖對象 在getter 和 setter中是不同的
</span><span> 20</span> <span> * @property string $viewPath The directory containing the view files for this widget. This property is
</span><span> 21</span> <span> * read-only. 包含此控件的視圖文件目錄
</span><span> 22</span> <span> *
</span><span> 23</span> <span> * @author Qiang Xue <qiang.xue@gmail.com>
</span><span> 24</span> <span> * @since 2.0
</span><span> 25</span>  <span>*/</span>
<span> 26</span> <span>class</span><span> Widget extends Component implements ViewContextInterface
</span><span> 27</span> <span>{
</span><span> 28</span>     <span>/*</span><span>*
</span><span> 29</span> <span>     * @var integer a counter used to generate [[id]] for widgets.
</span><span> 30</span> <span>     * @internal 用于生成widget ID的計數(shù)器
</span><span> 31</span>      <span>*/</span>
<span> 32</span>     <span>public</span> <span>static</span> $counter = <span>0</span><span>;
</span><span> 33</span>     <span>/*</span><span>*
</span><span> 34</span> <span>     * @var string the prefix to the automatically generated widget IDs.
</span><span> 35</span> <span>     * @see getId() 自動生成的前綴
</span><span> 36</span>      <span>*/</span>
<span> 37</span>     <span>public</span> <span>static</span> $autoIdPrefix = <span>'</span><span>w</span><span>'</span><span>;
</span><span> 38</span>     <span>/*</span><span>*
</span><span> 39</span> <span>     * @var Widget[] the widgets that are currently being rendered (not ended). This property
</span><span> 40</span> <span>     * is maintained by [[begin()]] and [[end()]] methods. 目前正在渲染的小部件
</span><span> 41</span> <span>     * @internal
</span><span> 42</span>      <span>*/</span>
<span> 43</span>     <span>public</span> <span>static</span> $stack =<span> [];
</span><span> 44</span> 
<span> 45</span> 
<span> 46</span>     <span>/*</span><span>*
</span><span> 47</span> <span>     * Begins a widget.  開始一個部件
</span><span> 48</span> <span>     * This method creates an instance of the calling class. It will apply the configuration
</span><span> 49</span> <span>     * to the created instance. A matching [[end()]] call should be called later.
</span><span> 50</span> <span>     * 將應(yīng)用配置文件創(chuàng)建調(diào)用類的實例,與[end()]方法相對應(yīng)
</span><span> 51</span> <span>     * @param array $config name-value pairs that will be used to initialize the object properties
</span><span> 52</span> <span>     * 用于初始化屬性的參數(shù)
</span><span> 53</span> <span>     * @return static the newly created widget instance 靜態(tài)新創(chuàng)建的部件實例
</span><span> 54</span>      <span>*/</span>
<span> 55</span>     <span>public</span> <span>static</span> function begin($config =<span> [])
</span><span> 56</span> <span>    {
</span><span> 57</span>         $config[<span>'</span><span>class</span><span>'</span>] = get_called_class();<span>//</span><span>后期靜態(tài)綁定類的名稱</span>
<span> 58</span>         <span>/*</span><span> @var $widget Widget </span><span>*/</span>
<span> 59</span>         $widget = Yii::createObject($config);<span>//</span><span>通過類名和傳入的配置,實例化調(diào)用類</span>
<span> 60</span>         <span>static</span>::$stack[] = $widget;<span>//</span><span>將對象放入正在渲染的部件堆棧中</span>
<span> 61</span> 
<span> 62</span>         <span>return</span><span> $widget;
</span><span> 63</span> <span>    }
</span><span> 64</span> 
<span> 65</span>     <span>/*</span><span>*
</span><span> 66</span> <span>     * Ends a widget.   結(jié)束小部件
</span><span> 67</span> <span>     * Note that the rendering result of the widget is directly echoed out.渲染結(jié)果是直接呼應(yīng)的
</span><span> 68</span> <span>     * @return static the widget instance that is ended. 靜態(tài)結(jié)束的部件實例。
</span><span> 69</span> <span>     * @throws InvalidCallException if [[begin()]] and [[end()]] calls are not properly nested
</span><span> 70</span>      <span>*/</span>
<span> 71</span>     <span>public</span> <span>static</span><span> function end()
</span><span> 72</span> <span>    {
</span><span> 73</span>         <span>if</span> (!empty(<span>static</span>::$stack)) {<span>//</span><span>正在呈現(xiàn)的小部件堆棧中存在調(diào)用類實例</span>
<span> 74</span>             $widget = array_pop(<span>static</span>::$stack);<span>//</span><span>從堆棧中刪除最后一個實例</span>
<span> 75</span>             <span>if</span> (get_class($widget) ===<span> get_called_class()) {
</span><span> 76</span>                 echo $widget->run(); <span>//</span><span>如果刪除的實例類名和當(dāng)前調(diào)用類名相同,輸出小部件的內(nèi)容</span>
<span> 77</span>                 <span>return</span><span> $widget;
</span><span> 78</span>             } <span>else</span><span> {
</span><span> 79</span>                 <span>throw</span> <span>new</span> InvalidCallException(<span>"</span><span>Expecting end() of </span><span>"</span> . get_class($widget) . <span>"</span><span>, found </span><span>"</span><span> . get_called_class());
</span><span> 80</span> <span>            }
</span><span> 81</span>         } <span>else</span><span> {
</span><span> 82</span>             <span>throw</span> <span>new</span> InvalidCallException(<span>"</span><span>Unexpected </span><span>"</span> . get_called_class() . <span>'</span><span>::end() call. A matching begin() is not found.</span><span>'</span><span>);
</span><span> 83</span> <span>        }
</span><span> 84</span> <span>    }
</span><span> 85</span> 
<span> 86</span>     <span>/*</span><span>*
</span><span> 87</span> <span>     * Creates a widget instance and runs it.   創(chuàng)建一個部件實例,并運行
</span><span> 88</span> <span>     * The widget rendering result is returned by this method. 返回部件渲染的結(jié)果。
</span><span> 89</span> <span>     * @param array $config name-value pairs that will be used to initialize the object properties
</span><span> 90</span> <span>     * 用于初始化對象屬性的參數(shù)
</span><span> 91</span> <span>     * @return string the rendering result of the widget. 控件的渲染結(jié)果。
</span><span> 92</span>      <span>*/</span>
<span> 93</span>     <span>public</span> <span>static</span> function widget($config =<span> [])
</span><span> 94</span> <span>    {
</span><span> 95</span>         ob_start(); <span>//</span><span>打開輸出緩沖區(qū)</span>
<span> 96</span>         ob_implicit_flush(<span>false</span>);<span>//</span><span>關(guān)閉絕對刷新</span>
<span> 97</span>         <span>/*</span><span> @var $widget Widget </span><span>*/</span>
<span> 98</span>         $config[<span>'</span><span>class</span><span>'</span>] = get_called_class(); <span>//</span><span>獲取調(diào)用類的類名</span>
<span> 99</span>         $widget = Yii::createObject($config);   <span>//</span><span>實例化類</span>
<span>100</span>         $<span>out</span> = $widget->run();<span>//</span><span>運行部件</span>
<span>101</span> 
<span>102</span>         <span>return</span> ob_get_clean() . $<span>out</span>; <span>//</span><span>返回內(nèi)部緩沖區(qū)的內(nèi)容,關(guān)閉緩沖區(qū)</span>
<span>103</span> <span>    }
</span><span>104</span> 
<span>105</span>     <span>private</span><span> $_id;
</span><span>106</span> 
<span>107</span>     <span>/*</span><span>*
</span><span>108</span> <span>     * Returns the ID of the widget. 返回插件的標(biāo)識
</span><span>109</span> <span>     * @param boolean $autoGenerate whether to generate an ID if it is not set previously
</span><span>110</span> <span>     * 是否生成一個唯一標(biāo)識,如果沒有設(shè)置
</span><span>111</span> <span>     * @return string ID of the widget. 部件唯一標(biāo)識
</span><span>112</span>      <span>*/</span>
<span>113</span>     <span>public</span> function getId($autoGenerate = <span>true</span><span>)
</span><span>114</span> <span>    {
</span><span>115</span>         <span>if</span> ($autoGenerate && $<span>this</span>->_id === <span>null</span><span>) {
</span><span>116</span>             <span>//</span><span>如果標(biāo)識為空,并且設(shè)置為允許自動生成標(biāo)識,自動生成</span>
<span>117</span>             $<span>this</span>->_id = <span>static</span>::$autoIdPrefix . <span>static</span>::$counter++<span>;
</span><span>118</span> <span>        }
</span><span>119</span> 
<span>120</span>         <span>return</span> $<span>this</span>-><span>_id;
</span><span>121</span> <span>    }
</span><span>122</span> 
<span>123</span>     <span>/*</span><span>*
</span><span>124</span> <span>     * Sets the ID of the widget. 設(shè)置小部件標(biāo)識
</span><span>125</span> <span>     * @param string $value id of the widget. 部件的標(biāo)識。
</span><span>126</span>      <span>*/</span>
<span>127</span>     <span>public</span><span> function setId($value)
</span><span>128</span> <span>    {
</span><span>129</span>         $<span>this</span>->_id =<span> $value;
</span><span>130</span> <span>    }
</span><span>131</span> 
<span>132</span>     <span>private</span><span> $_view;
</span><span>133</span> 
<span>134</span>     <span>/*</span><span>*
</span><span>135</span> <span>     * Returns the view object that can be used to render views or view files.返回視圖對象
</span><span>136</span> <span>     * The [[render()]] and [[renderFile()]] methods will use
</span><span>137</span> <span>     * this view object to implement the actual view rendering.
</span><span>138</span> <span>     * [render()]和[renderFile()]方法用視圖對象實現(xiàn)實際的視圖顯示。
</span><span>139</span> <span>     * If not set, it will default to the "view" application component.
</span><span>140</span> <span>     * @return \yii\web\View the view object that can be used to render views or view files.
</span><span>141</span>      <span>*/</span>
<span>142</span>     <span>public</span><span> function getView()
</span><span>143</span> <span>    {
</span><span>144</span>         <span>if</span> ($<span>this</span>->_view === <span>null</span><span>) {
</span><span>145</span>             $<span>this</span>->_view = Yii::$app->getView();<span>//</span><span>如果視圖對象為空,調(diào)用getView()取得視圖對象實例</span>
<span>146</span> <span>        }
</span><span>147</span> 
<span>148</span>         <span>return</span> $<span>this</span>-><span>_view;
</span><span>149</span> <span>    }
</span><span>150</span> 
<span>151</span>     <span>/*</span><span>*
</span><span>152</span> <span>     * Sets the view object to be used by this widget. 設(shè)置當(dāng)前部件調(diào)用的視圖對象實例
</span><span>153</span> <span>     * @param View $view the view object that can be used to render views or view files.
</span><span>154</span>      <span>*/</span>
<span>155</span>     <span>public</span><span> function setView($view)
</span><span>156</span> <span>    {
</span><span>157</span>         $<span>this</span>->_view = $view;<span>//</span><span>要用的視圖對象</span>
<span>158</span> <span>    }
</span><span>159</span> 
<span>160</span>     <span>/*</span><span>*
</span><span>161</span> <span>     * Executes the widget. 執(zhí)行部件
</span><span>162</span> <span>     * @return string the result of widget execution to be outputted.
</span><span>163</span> <span>     * 控件執(zhí)行的結(jié)果輸出。
</span><span>164</span>      <span>*/</span>
<span>165</span>     <span>public</span><span> function run()
</span><span>166</span> <span>    {
</span><span>167</span> <span>    }
</span><span>168</span> 
<span>169</span>     <span>/*</span><span>*
</span><span>170</span> <span>     * Renders a view.
</span><span>171</span> <span>     * The view to be rendered can be specified in one of the following formats:
</span><span>172</span> <span>     * 渲染一個視圖   實際調(diào)用View類中的同名方法 渲染的視圖可以用下列方式指定路徑
</span><span>173</span> <span>     * - path alias (e.g. "@app/views/site/index");
</span><span>174</span> <span>     * - absolute path within application (e.g. "//site/index"): the view name starts with double slashes.
</span><span>175</span> <span>     *   The actual view file will be looked for under the [[Application::viewPath|view path]] of the application.
</span><span>176</span> <span>     * - absolute path within module (e.g. "/site/index"): the view name starts with a single slash.
</span><span>177</span> <span>     *   The actual view file will be looked for under the [[Module::viewPath|view path]] of the currently
</span><span>178</span> <span>     *   active module.
</span><span>179</span> <span>     * - relative path (e.g. "index"): the actual view file will be looked for under [[viewPath]].
</span><span>180</span> <span>     *
</span><span>181</span> <span>     * If the view name does not contain a file extension, it will use the default one `.php`.
</span><span>182</span> <span>     *
</span><span>183</span> <span>     * @param string $view the view name.   視圖名
</span><span>184</span> <span>     * @param array $params the parameters (name-value pairs) that should be made available in the view.
</span><span>185</span> <span>     * 在視圖中可用的參數(shù)
</span><span>186</span> <span>     * @return string the rendering result. 渲染結(jié)果
</span><span>187</span> <span>     * @throws InvalidParamException if the view file does not exist.
</span><span>188</span>      <span>*/</span>
<span>189</span>     <span>public</span> function render($view, $<span>params</span> =<span> [])
</span><span>190</span> <span>    {
</span><span>191</span>         <span>//</span><span>調(diào)用view類中的render渲染指定的視圖</span>
<span>192</span>         <span>return</span> $<span>this</span>->getView()->render($view, $<span>params</span>, $<span>this</span><span>);
</span><span>193</span> <span>    }
</span><span>194</span> 
<span>195</span>     <span>/*</span><span>*
</span><span>196</span> <span>     * Renders a view file. 渲染一個視圖文件 同上
</span><span>197</span> <span>     * @param string $file the view file to be rendered. This can be either a file path or a path alias.
</span><span>198</span> <span>     * @param array $params the parameters (name-value pairs) that should be made available in the view.
</span><span>199</span> <span>     * @return string the rendering result.
</span><span>200</span> <span>     * @throws InvalidParamException if the view file does not exist.
</span><span>201</span>      <span>*/</span>
<span>202</span>     <span>public</span> function renderFile($file, $<span>params</span> =<span> [])
</span><span>203</span> <span>    {
</span><span>204</span>         <span>return</span> $<span>this</span>->getView()->renderFile($file, $<span>params</span>, $<span>this</span><span>);
</span><span>205</span> <span>    }
</span><span>206</span> 
<span>207</span>     <span>/*</span><span>*
</span><span>208</span> <span>     * Returns the directory containing the view files for this widget. 返回視圖文件路徑
</span><span>209</span> <span>     * The default implementation returns the 'views' subdirectory under the directory containing the widget class file.
</span><span>210</span> <span>     * @return string the directory containing the view files for this widget.
</span><span>211</span>      <span>*/</span>
<span>212</span>     <span>public</span><span> function getViewPath()
</span><span>213</span> <span>    {
</span><span>214</span>         $<span>class</span> = <span>new</span> ReflectionClass($<span>this</span><span>);
</span><span>215</span>         <span>//</span><span>取得部件類文件的目錄,拼接為視圖目錄</span>
<span>216</span>         <span>return</span> dirname($<span>class</span>->getFileName()) . DIRECTORY_SEPARATOR . <span>'</span><span>views</span><span>'</span><span>;
</span><span>217</span> <span>    }
</span><span>218</span> }

?

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1137258.htmlTechArticleyii2源碼學(xué)習(xí)筆記(二十),yii2源碼學(xué)習(xí)筆記 Widget類是所有部件的基類。yii2\base\Widget.php 1 ? php 2 /* * 3 * @link http://www.yiiframework.com/ 4 * @copyri...
本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機

Video Face Swap

Video Face Swap

使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

熱門話題

Laravel 教程
1601
29
PHP教程
1502
276
小紅書筆記怎么刪除 小紅書筆記怎么刪除 Mar 21, 2024 pm 08:12 PM

小紅書筆記怎么刪除?在小紅書APP中是可以編輯筆記的,多數(shù)的用戶不知道小紅書筆記如何的刪除,接下來就是小編為用戶帶來的小紅書筆記刪除方法圖文教程,感興趣的用戶快來一起看看吧!小紅書使用教程小紅書筆記怎么刪除1、首先打開小紅書APP進(jìn)入到主頁面,選擇右下角【我】進(jìn)入到專區(qū);2、之后在我的專區(qū),點擊下圖所示的筆記頁面,選擇要刪除的筆記;3、進(jìn)入到筆記頁面,右上角【三個點】;4、最后下方會展開功能欄,點擊【刪除】即可完成。

小紅書發(fā)布過的筆記不見了怎么辦?它剛發(fā)的筆記搜不到的原因是什么? 小紅書發(fā)布過的筆記不見了怎么辦?它剛發(fā)的筆記搜不到的原因是什么? Mar 21, 2024 pm 09:30 PM

作為一名小紅書的用戶,我們都曾遇到過發(fā)布過的筆記突然不見了的情況,這無疑讓人感到困惑和擔(dān)憂。在這種情況下,我們該怎么辦呢?本文將圍繞“小紅書發(fā)布過的筆記不見了怎么辦”這一主題,為你詳細(xì)解答。一、小紅書發(fā)布過的筆記不見了怎么辦?首先,不要驚慌。如果你發(fā)現(xiàn)筆記不見了,保持冷靜是關(guān)鍵,不要慌張。這可能是由于平臺系統(tǒng)故障或操作失誤引起的。檢查發(fā)布記錄很簡單。只需打開小紅書App,點擊“我”→“發(fā)布”→“所有發(fā)布”,就可以查看自己的發(fā)布記錄。在這里,你可以輕松找到之前發(fā)布的筆記。3.重新發(fā)布。如果找到了之

小紅書怎么在筆記中添加商品鏈接 小紅書在筆記中添加商品鏈接教程 小紅書怎么在筆記中添加商品鏈接 小紅書在筆記中添加商品鏈接教程 Mar 12, 2024 am 10:40 AM

  小紅書怎么在筆記中添加商品鏈接?在小紅書這款app中用戶不僅可以瀏覽各種內(nèi)容還可以進(jìn)行購物,所以這款app中關(guān)于購物推薦、好物分享的內(nèi)容是非常多的,如果小伙伴在這款app也是一個達(dá)人的話,也可以分享一些購物經(jīng)驗,找到商家進(jìn)行合作,在筆記中添加連接之類的,很多人都愿意使用這款app購物,因為不僅方便,而且有很多達(dá)人會進(jìn)行一些推薦,可以一邊瀏覽有趣內(nèi)容,一邊看看有沒有適合自己的衣服商品。一起看看如何在筆記中添加商品鏈接吧!小紅書筆記添加商品鏈接方法  在手機桌面上打開app?! ≡赼pp首頁點擊

如何解決jQuery AJAX報錯403的問題? 如何解決jQuery AJAX報錯403的問題? Feb 23, 2024 pm 04:27 PM

如何解決jQueryAJAX報錯403的問題?在開發(fā)網(wǎng)頁應(yīng)用程序時,經(jīng)常會使用jQuery來發(fā)送異步請求。然而,有時候在使用jQueryAJAX時可能會遇到錯誤代碼403,表示服務(wù)器禁止訪問。這種情況通常是由服務(wù)器端的安全設(shè)置所導(dǎo)致的,但可以通過一些方法來解決這個問題。本文將介紹如何解決jQueryAJAX報錯403的問題,并提供具體的代碼示例。一、使

揭秘C語言的吸引力: 發(fā)掘程序員的潛質(zhì) 揭秘C語言的吸引力: 發(fā)掘程序員的潛質(zhì) Feb 24, 2024 pm 11:21 PM

學(xué)習(xí)C語言的魅力:解鎖程序員的潛力隨著科技的不斷發(fā)展,計算機編程已經(jīng)成為了一個備受關(guān)注的領(lǐng)域。在眾多編程語言中,C語言一直以來都備受程序員的喜愛。它的簡單、高效以及廣泛應(yīng)用的特點,使得學(xué)習(xí)C語言成為了許多人進(jìn)入編程領(lǐng)域的第一步。本文將討論學(xué)習(xí)C語言的魅力,以及如何通過學(xué)習(xí)C語言來解鎖程序員的潛力。首先,學(xué)習(xí)C語言的魅力在于其簡潔性。相比其他編程語言而言,C語

一起學(xué)習(xí)word根號輸入辦法 一起學(xué)習(xí)word根號輸入辦法 Mar 19, 2024 pm 08:52 PM

在word中編輯文字內(nèi)容時,有時會需要輸入公式符號。有的小伙們不知道在word根號輸入的方法,小面就讓小編跟小伙伴們一起分享下word根號輸入的方法教程。希望對小伙伴們有所幫助。首先,打開電腦上的Word軟件,然后打開要編輯的文件,并將光標(biāo)移動到需要插入根號的位置,參考下方的圖片示例。2.選擇【插入】,再選擇符號里的【公式】。如下方的圖片紅色圈中部分內(nèi)容所示:3.接著選擇下方的【插入新公式】。如下方的圖片紅色圈中部分內(nèi)容所示:4.選擇【根式】,再選擇合適的根號。如下方的圖片紅色圈中部分內(nèi)容所示:

PHP代碼在瀏覽器中如何顯示源碼而不被解釋執(zhí)行? PHP代碼在瀏覽器中如何顯示源碼而不被解釋執(zhí)行? Mar 11, 2024 am 10:54 AM

PHP代碼在瀏覽器中如何顯示源碼而不被解釋執(zhí)行?PHP是一種服務(wù)器端腳本語言,通常用于開發(fā)動態(tài)網(wǎng)頁。當(dāng)PHP文件在服務(wù)器上被請求時,服務(wù)器會解釋執(zhí)行其中的PHP代碼,并將最終的HTML內(nèi)容發(fā)送到瀏覽器以供顯示。然而,有時我們希望在瀏覽器中直接展示PHP文件的源代碼,而不是被執(zhí)行。本文將介紹如何在瀏覽器中顯示PHP代碼的源碼,而不被解釋執(zhí)行。在PHP中,可以使

小紅書發(fā)布筆記教程怎么弄?它發(fā)布筆記可以屏蔽人嗎? 小紅書發(fā)布筆記教程怎么弄?它發(fā)布筆記可以屏蔽人嗎? Mar 25, 2024 pm 03:20 PM

小紅書作為一個生活方式分享平臺,涵蓋了美食、旅行、美妝等各個領(lǐng)域的筆記。許多用戶希望在小紅書上分享自己的筆記,但卻不清楚如何操作。在這篇文章中,我們將詳細(xì)介紹小紅書發(fā)布筆記的流程,并探討如何在平臺上屏蔽特定用戶。一、小紅書發(fā)布筆記教程怎么弄?1.注冊登錄:首先,需要在手機上下載小紅書APP,并完成注冊登錄。在個人中心完善個人資料是很重要的。通過上傳頭像、填寫昵稱和個人簡介,可以讓其他用戶更容易了解你的信息,也能幫助他們更好地關(guān)注你的筆記。3.選擇發(fā)布頻道:在首頁下方,點擊“發(fā)筆記”按鈕,選擇你想

See all articles